Skip to content
Browse files

Merge branch 'master' of

  • Loading branch information...
num3ric committed Dec 9, 2015
2 parents 5485b9e + da9aff0 commit c8d76013dde0b62fa54628d2c82c78680b96b205
Showing with 2 additions and 48 deletions.
  1. +2 −48
@@ -1,50 +1,4 @@

This is yet another Oculus Rift block for Cinder, and a collaboration between [Paul Houx]( & myself. *Thanks Paul for all the initial work!*

* Basic Sample: Features the standard use case scenario, with all the most common functionalities.

* Spherical Stereo: Maps a sample Arnold 360 texture to a sphere, in stereo. Useful for both live-action & pre-rendered CG content.

* Instanced Stereo: Similar to the Basic Sample, only it uses instanced stereo rendering as described [here](

First, initialize the rift manager in prepareSettings.

using namespace hmd;

Create an Oculus Rift instance:
OculusRiftRef mRift;
mRift = OculusRift::create();

The OculusRift class has two cameras: a convenience host camera controlling the overall head position & orientation, and an active eye camera which is updated by the SDK according to the tracked position & orientation. Their transformations are composed and can be queried via the `hmd::OculusRift` interface.

In the update()** loop, call bind to render the scene to the rift's framebuffers. Iterate over each eye (enabling it) and draw your scene as follows:
ScopedRiftBuffer bind{ mRift };
for( auto eye : mRift.getEyes() ) {
mRift.enableEye( eye );

_*The draw code must be called from the update() loop due to a [bug in the latest SDK](

To avoid judder, make sure you hit **75fps**!

Working toward a SteamVR cinder block, come visit later.

0 comments on commit c8d7601

Please sign in to comment.
You can’t perform that action at this time.