LibOVR集成

oculusSDK设计成尽可能简单的集成。这个指导是基础的Oculus集成进一个c/c++游戏引擎或应用。

我们会讨论初始化LibOVR,HMD设备列举,头部追踪,帧时间和Rift渲染。

很多代码示例在OculusRoomTiny Demo源代码目录的下面。OculusRoomTiny和OculusWorldDemo是很好的地方去阅读示例集成代码当对一个特殊的系统或特征有疑问时。

SDK概览

这里有3个主要阶段当使用SDK时:安装,游戏循环和关闭。

为了添加Oculus支持一个新应用,按照下面做:

1.通过ovr_Initalize初始化LibOVR。

2.调用ovr_Create并检测返回值来判断它是否成功。你能用ovr_GetHmdDesc()定期检测一个HDM的状态.

3.集成头部追踪到你应用的视图和运动代码中,这包含:

a.获取预测的头戴设备方向帧通过一个GetPredictedDisplayTime和ovr_GetTrackingState的组合调用。

b.应用Rift方向和位置到摄像头视图中,当组合它和其他的应用控制时。

c.修改运动和游戏考虑头的方向。

4.初始化HMD的渲染

a.选择渲染参数项分辨率和基于HMD能力视图的域。

。查看ovr_GetFovTextrueSize和ovr_GetRenderDesc.

b.配置渲染通过建立D3D/OpenGL特殊交换纹理的设置来呈现数据为头戴设备。

。查看ovr_CreateTextureSwapChainDX和ovr_CreateTextureSwapChainGL.

5.修改应用帧(集成支持HMD渲染)和合适的帧时间:

a.确保你的引擎支持渲染立体视图。

b.添加帧时间逻辑到渲染循环中来获取正确的预测眼睛渲染姿势。

c.渲染每个眼睛的视图来渲染目标。

d.提交已渲染的帧到头戴中通过调用ovr_SubmitFrame.

6.自定义的UI屏在头戴中工作很好。

7.释放创建的资源在关闭时。

。查看:ovr_DestroyTextureSwapChain,ovr_Destroy,ovr_Shutdown.

你可能感兴趣的:(LibOVR集成)