OpenVR——驱动接口之IClientTrackedDeviceProvider简介
来源:互联网 发布:windows脚本编程 编辑:程序博客网 时间:2024/05/23 00:02
IClientTrackedDeviceProvider
这个接口在SDK的openvr_driver.h文件中定义的.用来处理应用场景中各种各样的客户端操作.驱动中必须实现的接口(后续会淘汰,但是目前还是要用),它将被vrclient.dll加载.
EVRInitError Init( EClientDriverMode eDriverMode, IDriverLog *pDriverLog, VR::IClientDriverHost *pDriverHost, const char *pchUserDriverConfigDir, const char *pchDriverInstallDir )
初始化驱动.这个函数将会在所有其他方法之前被调用,除了BIsHmdPresent().BIsHmdPresent会在init/cleanup对之外调用.
如果这个函数返回值是除VRInitError_None之外的其他值,驱动将会被卸载.
pDriverHost永远不会为空,总是指向一个IClientDriverHost接口.
- pchUserDriverConfigDir:驱动保存用户配置文件的文件夹的绝对路径
- pchDriverInstallDir:驱动根文件夹的绝对路径.
void Cleanup()
在卸载之前清理驱动资源.
bool BIsHmdPresent( const char *pchUserConfigDir )
当客户端需要通知应用程序是否有HMD连接上时被调用.这个方法应该尽可能的轻(在这个函数里不要做太多的复杂的事情),并且应该在Hooking进程函数或离开资源加载时没有任何副作用.init函数不应该在这之前被调用,并且不会再它之后调用Cleanup.
EVRInitError SetDisplayId( const char *pchDisplayId )
当客户端初始化一个HMD,让客户端驱动知道他们使用的是哪一个是正在被调用的.
HiddenAreaMesh_t GetHiddenAreaMesh( EVREye eEye )
返回当前HMD模版网格信息.如果这个HMD没有模版网格的顶点数据和计数,将分别返回NULL和0(即pVertexData为NULL,unTriangleCount为0).这些网格是将要被渲染到模版缓冲区中的(或深度缓冲设置),这是在渲染每个眼睛的视图之前的.覆盖在网格的像素在镜头畸变之后不会被用户看见以及可见性的面板上(显示屏).通过让GPU提前拒绝那些不会被用户看到的像素进入图像渲染器.
uint32_t GetMCImage( uint32_t *pImgWidth, uint32_t *pImgHeight, uint32_t *pChannels, void *pDataBuffer, uint32_t unBufferLen )
为当前HMD获取MC图像,返回保持指定资源所需缓冲区的字节数.
阅读全文
0 0
- OpenVR——驱动接口之IClientTrackedDeviceProvider简介
- openVR驱动接口之IClientTrackedDeviceProvider简介
- OpenVR——驱动接口之IServerTrackedDeviceProvider简介
- openVR驱动接口之IServerTrackedDeviceProvider简介
- openVR驱动接口之IServerDriverHost简介
- openVR驱动接口之IClientDriverHost简介
- openVR驱动接口之IVRSettings简介
- openVR驱动接口之ITrackedDeviceServerDriver简介
- openVR驱动接口之IVRDisplayComponent简介
- openVR驱动接口之IVRDriverDirectModeComponent简介
- openVR驱动接口之IVRControllerComponent简介
- openVR驱动接口之IVRCameraComponent简介
- openVR驱动接口之ICameraVideoSinkCallback简介
- openVR驱动接口之IDriverLog简介
- openVR之十二大驱动接口
- openvr显示相关接口
- OpenVR之IVRSystem
- linux无线驱动接口简介
- js 继承
- 先序遍历、中序遍历、后序遍历(二叉树)
- 如何理解deconvolution?
- 能量项链 NOIP2006 Codevs1154
- 程序员面试金典:高度最小的BST、输出单层结点
- OpenVR——驱动接口之IClientTrackedDeviceProvider简介
- Meteor Shower POJ
- 得到三个[10-100)的随机数,按降序排列。注意:只能用if语句
- 【Linux】文件和目录属性及其修改——chgrp、chown、chmod、touch...
- LinkedList简介
- Logo图标的含义
- 解决VS2010警告unsuccessfulbuild”,因为已指定“AlwaysCreate”
- zigbee binding
- CreateEvent的用法