I technically did this yesterday, but here goes.
Although most of WSW’s engine has always supported rendering the scene from multiple views (e.g. both the camera’s view and the views of lights to render their shadow maps), I still had certain parts that I assumed would only need to be rendered from the main camera view were limited to a single view. I rewrote those parts to allow the engine to support any number of camera views and shadow map views. This makes it possible to do 3 new interesting things:
-
Support for splitscreen offline multiplayer, for any number of players. Even better, I could even have 3 different players on each of the 3 monitors I have since my 3 monitors are presented as a single logical monitor to LWJGL thanks to Nvidia Surround. AMD Eyefinity should work in the same way for AMD users. In theory I could have 4 player splitscreen per monitor for a total of 12 players on a single computer. Obviously, GPU performance would be the only thing that holds me back.
-
Proper support for anaglyphic 3D, active shutter 3D monitors and Oculus Rift. Although I can’t get OpenGL quad buffering working on my Nvidia cards (stupid driver limits it to Quadro cards -___-’), I can easily render side-by-side 3D which a 3D TV can convert to proper 3D (although at half resolution for each eye), or even make my own anaglyphic 3D support. I intend to actually try out quad buffering on my AMD test PC as well.
-
Better quality multi-monitor gaming. I have 3 monitors, but on the side monitors the game looks extremely stretched. This is due to the fact that GPUs assume that the monitor is flat, so angling the side monitors in towards me breaks that assumption. With one view for each monitor I could easily compensate for the angle of the monitors so that the quality remains perfect at the cost of some performance.