one guess -- create a 1D texture and use the dot-product of the vector representing the view direction and the normal of the pixel to look up the 1D texture.
could be done similarly with a cube-map but 1D texture makes more sense to me unless you want a non-uniform edge-shine.