Overview of Release 1.20
The Oculus PC SDK lets you build VR experiences for the Oculus Rift in C++. For more information, see our PC SDK Developer Guide.
- Depth Buffer Support – The new depth buffer layer specifies a monoscopic or stereoscopic view, with depth textures (in addition to color textures). This layer is equivalent to ovrLayerEyeFov, but with the addition of depth textures and a projection description. Depth buffers allow Dash overlays to be drawn without conflicting with scene objects. Depth buffers may also be used to support positional time warp. For more information, see the ovrLayerEyeFovDepth struct. Also see the “Layers” section in Rendering to the Oculus Rift.
- Cylindrical Layer Support – It is now possible to use Cylinder layers to create curved quads, instead of flat quads. To do this, place the center of the cylinder at the camera origin in order to present a quad equidistant from the viewer. This can create more readable text for user interfaces and quads. For more information, see the ovrLayerCylinder struct. Also see the “Layers” section in Rendering to the Oculus Rift.
- Rectilinear Capture Support – This feature enables your applications to obtain screenshots (at 90 frames per second) of a single non-distorted image that corresponds to what the user is seeing in the VR experience. You might use this feature to mirror the VR experience to an external monitor. See ovr_CreateMirrorTextureWithOptionsDX (for DirectX), ovr_CreateMirrorTextureWithOptionsGL (for OpenGL), and ovr_CreateMirrorTextureWithOptionsVk (for Vulkan). Also see the “Rectilinear Capture” section in Rendering to the Oculus Rift.
- ovrLayerEyeFovDepth struct has been added to enable depth buffer support.
- ovrLayerCylinder struct has been added to enable cylindrical layer support.
- ovr_CreateMirrorTextureWithOptionsDX (for DirectX), ovr_CreateMirrorTextureWithOptionsGL (for OpenGL), and ovr_CreateMirrorTextureWithOptionsVk (for Vulkan) have been added to enable rectilinear capture support.
- There is a new OVR_CAPI_Prototypes.h file that is part of the SDK's shim. You only need to use this if your application compiles OVR_CAPIShim.c, as opposed to linking LibOVR.lib.
Known SDK Issues
- If you encounter intermittent tracking issues, remove the batteries from any Engineering Sample Oculus Remotes that you paired with your headset and contact Developer Relations for replacement remotes.
- If you bypass the shim and communicate with the DLL directly, without specifying a version to ovr_Initialize, the DLL has no way of knowing the SDK version with which the application was built. This can result in unpredictable or erratic behavior which might cause the application to crash.