Oculus SDK创建一个应用程序流程-(libOVR)
来源:互联网 发布:c语言预处理指令格式 编辑:程序博客网 时间:2024/06/10 17:48
优化整合的Oculus SDK让C/C++游戏引擎或应用程序的开发更为方便。在这讨论初始化LibOVR,HMD设备枚举,头部追踪,帧时序,以及画面渲染到Rift。
Oculus所提供的一些样例程序,比如OculusRoomTiny demon源码,可用于验证某个特殊系统或功能。
SDK概要:
对该SDK的使用有三个主要的阶段:setup(安装配置),game loop(游戏逻辑循环)以及shutdown(应用结束,销毁申请空间等)
使用Oculus开发一个应用程序的流程如下:
1.调用ovr_Initialize函数初始化LibOVR
2.调用ovr_Create函数并检查返回值查看是否成功。调用函数ovr_GetHmdDesc(nullptr)周期性的轮询以检查HDM是否存在。
3.将头部追踪功能的代码插入到应用程序的视野以及运动相关代码中。涉及到以下:
a.调用GetPredictedDisplayTime以及ovr_GetTrackingState函数,为当前帧获取头盔的预测方向。
b.在与其他应用的控制行为结合时,将Rift的方位值应用到摄像头视野上。
c.动作以及游戏可玩性的修改要考虑头部方向。
4.初始化渲染HMD
a.基于HMD的属性,选择渲染参数,比如分辨率和视场角。参考:ovr_GetFocTextureSize和ovr_GetRenderDesc.
b.通过创建D3D/OpenGL纹理交换链将数据渲染到头盔中。参考,ovr_CreateTextureSwapChainDX和ovr_CreateTextureSwapChainGL.
5.修改应用程序帧渲染以整合HMD和帧时序。
a.确保引擎支持渲染3D立体视野。
b.添加帧时序的逻辑到渲染循环中,以获取正确的眼部渲染姿态。
c.渲染每只眼睛的视野到中间渲染目标。
d.调用函数ovr_SubmitFrame提交渲染的帧到头盔
6.头盔内部的UI屏幕显示正常。
7.调用shutdown函数销毁创建的资源,参考:ovr_DestroyTextureSwapChain,ovr_Destroy,以及ovr_Shutdown。
参考网址。
- Oculus SDK创建一个应用程序流程-(libOVR)
- 创建一个D3D11应用程序流程
- Oculus 0.7.0 SDK DX11渲染流程
- VR系列——Oculus Rift 开发者指南:一、LibOVR集成
- win32应用程序创建流程
- Oculus Rift SDK 安装
- 应用程序创建layer的流程
- 第一步-------创建一个应用程序
- 创建一个控制台应用程序
- 创建一个Mule应用程序
- 创建一个app流程
- LibOVR集成
- 创建一个Windows Service应用程序
- 创建一个Windows Service应用程序
- 创建一个 Yahoo! SearchMonkey 应用程序
- 创建一个控制台应用程序SimpleWinFormsApp
- 创建一个 HelloWorld Web应用程序
- 3.1、创建一个ObjectARX应用程序
- iPhone X适配
- Javascript Dom编程艺术读书笔记(二)
- Maven+Spring+Spring MVC+MyBatis+MySQL整合SSM框架
- docker结合portworx
- 【HTML/CSS】导航菜单的制作
- Oculus SDK创建一个应用程序流程-(libOVR)
- leetcode 207. Course Schedule 课程调度 + 拓扑排序
- 《零基础入门学习Python》学习笔记(26-51)
- jquery UI API-滑块部分(Slider widget)
- Android 屏幕适配方案
- jquery-parent(),parents()与closest()的区别
- 【转载】Google Hacking
- linux 使用sh启动多jar包 编写三个脚本
- Python 读取文件 写入文件