找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 1553|回复: 9

[Unity3D] Unity3d Vive开发教程: Vive 前置摄像头浅析3——OpenVR自带实例API解析 ...

[复制链接]

该用户从未签到

4

主题

4

帖子

4

积分

LV.1

Rank: 1

积分
4
QQ
发表于 2019-7-8 08:24:41 | 显示全部楼层 |阅读模式
ARial, &quot">这一节将分析API的具体功能及代码调用。
OpenVR 从1.0.0版本起,在OpenVR.cs中包含了CVRTrackedCamera这个类,然而最新版的SteamVR插件(V1.1.0)中尚不包含该类。
在OpenVR最新版本(1.0.2)版本中已包含12个函数,简单的介绍下作用:
GetCameraErrorNameFromEnum:获取错误类型转换成文本名称。
HasCamera:是否有外置相机;
GetCameraFrameSize:获取相机帧缓存大小;
GetCameraIntrinisics:看返回结果是相机的focallength焦距和center中心;
GetCameraProjection:获取相机投影矩阵,znear,zfar;
AcquireVideoStreamingService:申请获取视频流;
ReleaseVideoStreamingService:释放申请;
GetVideoStreamFrameBuffer:获取视频流帧缓存;
GetVideoStreamTextureSize:获取视频流图像尺寸;
GetVideoStreamTextureD3D11:获取D3D11视频流图像;
GetVideoStreamTextureGL:获取GL视频流图像;
ReleaseVideoStreamTextureGL:释放D3D11视频流图像;
自带的实例中用到的只包括以下几个,按程序执行顺序:
HasCamera和GetCameraErrorNameFromEnum。在CQTrackedCameraOpenVRTest::InitOpenVR()函数中;
GetCameraFrameSize和AcquireVideoStreamingService。在CQTrackedCameraOpenVRTest::StartVideoPreview();
GetVideoStreamFrameBuffer。在CQTrackedCameraOpenVRTest::OnDisplayRefreshTimeout();
最后调用CQCameraPreviewImage::SetFrameImage( )将视频流画出来。基本上用这几个函数就可以调用摄像头的图像了。
另外API中有图像类型的枚举变量:
public enumEVRTrackedCameraFrameType
{
   Distorted = 0,
   Undistorted = 1,
   MaximumUndistorted = 2,
   MAX_CAMERA_FRAME_TYPES = 3,
}
各参数获取的图像如下:第一张是Distorted的正常画面,第三章的右上角分辨率是1224x920,但图像扭曲的很厉害,而且边缘也不太清晰。看代码的注释,是说其包含了Invalid的部分图像(将不太清晰部分裁掉了?)不太明白为什么相机拍出来的会有不可用部分,求大神解答!

Unity3d Vive开发教程: Vive 前置摄像头浅析3——OpenVR自带实例API解析 资源教程

Unity3d Vive开发教程: Vive 前置摄像头浅析3——OpenVR自带实例API解析 资源教程

PS1: 在Unity的商店中有Valve公司The Lab 游戏的源码分享,The Lab Renderer。还不知道的赶紧下载学习下吧!之所以提这个是因为里面有24个Vive前置摄像头视频处理的函数,比开源的OpenVR中还多,这算不算泄露了内部版本?!有兴趣的赶紧研究研究啊。
PS2: 如何在Unity中利用API调用摄像头还没攻关,之前有用过WebCamera这个Unity的API去获取图像并作为texture放到场景中。利用OpenVR的API应该是在获取FrameBuffer后,将其保存为texture再放入场景就行。等弄出来以后我会再share具体的工程!

该用户从未签到

1

主题

8

帖子

8

积分

LV.1

Rank: 1

积分
8
QQ
发表于 2019-8-13 13:45:07 | 显示全部楼层
增强现实,增强现实,增强现实。重要的事情说三遍

该用户从未签到

1

主题

67

帖子

51

积分

LV.2

Rank: 2

积分
51
QQ
发表于 2019-8-13 14:30:36 | 显示全部楼层
这里竟然还有这么一个关于AR的网站的收藏了

该用户从未签到

0

主题

13

帖子

13

积分

LV.1

Rank: 1

积分
13
QQ
发表于 2019-8-15 02:54:46 | 显示全部楼层
楼主写的很不错,关于AR的知识受教了

该用户从未签到

1

主题

11

帖子

11

积分

LV.1

Rank: 1

积分
11
QQ
发表于 2019-8-17 09:01:55 | 显示全部楼层
楼主辛苦了。。回帖是一种美德

该用户从未签到

1

主题

25

帖子

26

积分

LV.1

Rank: 1

积分
26
QQ
发表于 2019-8-18 04:23:41 | 显示全部楼层
看帖怎么能不会呢??

该用户从未签到

0

主题

60

帖子

60

积分

LV.2

Rank: 2

积分
60
QQ
发表于 2019-8-18 21:45:14 | 显示全部楼层
楼主辛苦了,帮楼主顶起来

该用户从未签到

2

主题

14

帖子

10

积分

LV.1

Rank: 1

积分
10
QQ
发表于 2019-8-20 07:31:12 | 显示全部楼层
想了解下AR增强现实的相关内容来看看

该用户从未签到

2

主题

11

帖子

12

积分

LV.1

Rank: 1

积分
12
QQ
发表于 2019-8-21 15:49:03 | 显示全部楼层
竟然还有零回复,给我消失

该用户从未签到

1

主题

22

帖子

21

积分

LV.1

Rank: 1

积分
21
QQ
发表于 3 天前 | 显示全部楼层
嗯,很不错的样子!!
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

关闭

站长推荐上一条 /1 下一条

快速回复 返回顶部 返回列表