diff options
Diffstat (limited to 'source/blender/draw/modes/shaders/object_loose_points_frag.glsl')
-rw-r--r-- | source/blender/draw/modes/shaders/object_loose_points_frag.glsl | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/source/blender/draw/modes/shaders/object_loose_points_frag.glsl b/source/blender/draw/modes/shaders/object_loose_points_frag.glsl new file mode 100644 index 00000000000..66b3091a41c --- /dev/null +++ b/source/blender/draw/modes/shaders/object_loose_points_frag.glsl @@ -0,0 +1,19 @@ + +uniform vec4 color; +uniform vec4 innerColor; + +out vec4 fragColor; + +void main() +{ + vec2 centered = abs(gl_PointCoord - vec2(0.5)); + float dist = max(centered.x, centered.y); + + float fac = dist * dist * 4.0; + fragColor = mix(innerColor, color, 0.45 + fac * 0.65); + + /* Make the effect more like a fresnel by offsetting + * the depth and creating mini-spheres. + * Disabled as it has performance impact. */ + // gl_FragDepth = gl_FragCoord.z + 1e-6 * fac; +} |