Updating the view angles of all local players during EndFrame allows the engine to update it's internal viewer data (e.g., smoothed camera origin interpolation) before it begins rendering the frame.
Viewer data is now updated from R_RenderViewPorts() before the port is rendered and is therefore no longer dependent upon the game calling back to R_RenderPlayerView().
The engine can be sure that it has up to date view data for all local players before rendering begins.
Refactor: Update view angles during EndFrame
Updating the view angles of all local players during EndFrame allows
the engine to update it's internal viewer data (e.g., smoothed camera
origin interpolation) before it begins rendering the frame.
Viewer data is now updated from R_RenderViewPorts() before the port
is rendered and is therefore no longer dependent upon the game calling
back to R_RenderPlayerView().
The engine can be sure that it has up to date view data for all local
players before rendering begins.