Oculus Rift CV1edit
Download three demos files: File:OculusRiftCV1Demos.zip
Oculus Rift CV1 support in TouchDesigneredit
Ways to interface with Oculus Rift in TouchDesigner
- Oculus Rift CHOP - outputs several sets of channels such as orientation, left and right eye camera positions, acceleration and left and right eye projection matrices.
- Oculus Rift TOP - Outputs the left and right images to the Oculus Rift.
The demos list above are a good starting point for developing for the Oculus Rift. First ensure that the headset is configured to use the 'Extend Desktop to the HMD' display mode. This can be selected from the Oculus Configuration Utility under the Tools->Rift Display Mode menu. Direct HMD rendering is not supported for OpenGL applications yet. Once the Oculus is appearing as an extra monitor in your OS you need to ensure it has the correct orientation. By default it shows up as 'Portrait' but our tests have shown that the correct orientation is 'Landscape (Flipped)'. Use the 'Show Demo Scene' button in the Oculus Configuration Utility to test and ensure the display is setup correctly. Once the Oculus is working correctly for the demo scene in 'Extend Desktop Mode', it should also work correctly for TouchDesigner.
Refresh Rate Issuesedit
The Oculus Rift S runs at 80hz and the Oculus Rift DV1 runs at 90hz, but most desktop monitors are 60hz. Windows may not feed the Oculus 80/90hz data if there are TouchDesigner windows redrawing on the 60hz monitor. If possible set all your monitors to run at 90hz also, however many monitors don't support that. Going into perform mode with your window and ensuring the 'Redraw' parameter is off avoids this issue. In addition, V-Sync Mode in the perform Window COMP should be disabled.
Oculus Rift CHOPedit
The Oculus Rift CHOP provides two main sets of data. Each eye's camera render position via a transform matrix as 16 CHOP channels. The other set of data is each eye's projection matrix also as 16 CHOP channels. These two matrices can be used directly in the Camera COMP using the CHOP/DAT Matrix parameters for the Pre-XForm and Projection Matrix.