Separate FOVs can be set already in eng.cfg (fov_v_separate nonzero).
- Tree shadows detached from the trees except directly in the center of the view
- Large-scale terrain lighting shifts with the view
These should be all shadow related. Shadow projection currently doesn't unwarp correctly in these special projection modes, but even if it did, these modes operate on vertex level but rasterizer cannot be programmed to account for it in current hardware, and there still will be some issues there. The only method that could fix it in current system to a degree would be a dynamic tessellation in all stages, but that degrades performance and isn't trivial to add everywhere needed. However, this is a problem mainly for things that already do not tessellate adaptively, like the tree billboards, it's not a problem with terrain, for example, so once trees become better it won't be such a problem.
Limit at <180 degrees is there because other parts of the fixed GPU pipeline break at and beyond 180, like near-plane culling. Multi-frustum or multi-pass rendering can come to the rescue here, and for 2 views it could technically reuse the existing 2-frustum rendering in Oculus.
In any case, this is a lot of custom coding to cover a very small user base; fortunately our commercial licensees need to handle this too so it will be eventually developed soon™