1 - Implement a shader for environment mapping.
2 - Implement a shader for bump mapping.
3 - Extend the shader in (2) to normal mapping.