Removed the need for Shader to be a friend class of MaterialLocations.