#version 120 // // grid.frag // fragment shader // // Created by Andrzej Kapolka on 1/21/14. // Update by Ryan Huffman on 12/30/14. // Copyright 2013 High Fidelity, Inc. // // Distributed under the Apache License, Version 2.0. // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // varying vec2 modelCoords; // Squared distance from center of 1x1 square to an edge along a single axis (0.5 * 0.5) const float SQUARED_DISTANCE_TO_EDGE = 0.25; void main(void) { // Squared distance from grid center - this assumes the grid lines are from // 0.0 ... 1.0 in model space. float sqDist = pow(modelCoords.x - 0.5, 2) + pow(modelCoords.y - 0.5, 2); float alpha = max(0, SQUARED_DISTANCE_TO_EDGE - sqDist) / SQUARED_DISTANCE_TO_EDGE; alpha *= gl_Color.a; gl_FragColor = vec4(gl_Color.rgb, alpha); }