mirror of
https://github.com/GayPizzaSpecifications/padlab.git
synced 2025-08-03 05:10:56 +00:00
Tweak geo shader values
This commit is contained in:
parent
4dc57b64d1
commit
284b7b32a6
@ -8,36 +8,39 @@ out vec4 vColour;
|
|||||||
uniform vec4 uColour;
|
uniform vec4 uColour;
|
||||||
uniform vec2 uScaleFact;
|
uniform vec2 uScaleFact;
|
||||||
|
|
||||||
|
const float widthCoef = 1.0;
|
||||||
|
const float aaCoef = 1.5;
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
vec2 n = normalize(gl_in[1].gl_Position.xy - gl_in[0].gl_Position.xy);
|
vec4 from = gl_in[0].gl_Position;
|
||||||
vec4 c = vec4(n.yx * vec2(1.0, -1.0) * uScaleFact, 0.0, 0.0);
|
vec4 to = gl_in[1].gl_Position;
|
||||||
|
vec2 normal = normalize(to.xy - from.xy);
|
||||||
|
vec4 tangent = vec4(normal.yx * vec2(1.0, -1.0) * uScaleFact, 0.0, 0.0);
|
||||||
|
|
||||||
const float width = 0.75;
|
const float cumulCoef = widthCoef + aaCoef;
|
||||||
const float fuzz = 2.0;
|
vec4 edgeColour = uColour * vec4(1.0, 1.0, 1.0, 0.0);
|
||||||
|
|
||||||
const float widthFuzz = width + fuzz;
|
vColour = edgeColour;
|
||||||
|
gl_Position = from - tangent * cumulCoef;
|
||||||
vColour = uColour * vec4(1.0, 1.0, 1.0, 0.0);
|
|
||||||
gl_Position = gl_in[0].gl_Position - c * widthFuzz;
|
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
gl_Position = gl_in[1].gl_Position - c * widthFuzz;
|
gl_Position = to - tangent * cumulCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
|
|
||||||
vColour = uColour;
|
vColour = uColour;
|
||||||
gl_Position = gl_in[0].gl_Position - c * width;
|
gl_Position = from - tangent * widthCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
gl_Position = gl_in[1].gl_Position - c * width;
|
gl_Position = to - tangent * widthCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
|
|
||||||
gl_Position = gl_in[0].gl_Position + c * width;
|
gl_Position = from + tangent * widthCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
gl_Position = gl_in[1].gl_Position + c * width;
|
gl_Position = to + tangent * widthCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
|
|
||||||
vColour = uColour * vec4(1.0, 1.0, 1.0, 0.0);
|
vColour = edgeColour;
|
||||||
gl_Position = gl_in[0].gl_Position + c * widthFuzz;
|
gl_Position = from + tangent * cumulCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
gl_Position = gl_in[1].gl_Position + c * widthFuzz;
|
gl_Position = to + tangent * cumulCoef;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user