-Decide how far away from the camera you want the shadows to extend.
-Divide that distance in half and transform the vector (0,0,distance) from the camera to the world. That is the center of your frustrum volume.
-The other points in the volume are the camera position and the four points making up the base of the frustrum pyramid shape. Take one of those four points and find the distance from it to the center. This is the maximum radius of the volume.
-Center your rendering around the frustrum center, and use the radius as the width and height. It waste a lot of texture space, but not as much as if you were rendering all around the camera.
-Divide that distance in half and transform the vector (0,0,distance) from the camera to the world. That is the center of your frustrum volume.
-The other points in the volume are the camera position and the four points making up the base of the frustrum pyramid shape. Take one of those four points and find the distance from it to the center. This is the maximum radius of the volume.
-Center your rendering around the frustrum center, and use the radius as the width and height. It waste a lot of texture space, but not as much as if you were rendering all around the camera.