Separate some non-drawing functionality from drawing function.
Add some initialization for OR.
Restoring view port shall use start of x and y also.
The deferred shader has its own view port.
Rearrange some drawing control
Use parallel build.
Define a flag for Oculus: --ovr.