This commit implements Bump node in GLSL, making it possible to see previews of bump mapping in viewport without need to render. Nothing really fancy going on here, just uses internal dFdx/dFdy functions to get derivatives of the surface and map itself. Quite basic but seems to behave correct-ish. This commit also makes Displacement material output to affect viewport shading by re-linking unconnected Normal input to a node which was used for displacement output (via Bump node). Intention of all this is to make it really easy to do bump map painting with Cycles as an active render engine. Reviewers: campbellbarton, mont29, brecht, psy-fi Reviewed By: brecht Subscribers: Blendify, eyecandy Differential Revision: https://developer.blender.org/D2014