I'm using OpenGL and I've managed to get spotlight shadowmapping to work. I have the position and direction of the spotlight. The view matrix is constructed using glm::lookAt(), and the projection matrix is a perspective matrix.

For directional lights however, all I have is the light direction.

1) What is the view matrix and how to construct it, given only light direction?

2) What is the projection matrix and how is it constructed?

3) Do you still do a shadow map pass with directional lights before the actual lighting pass?

Thanks