在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能





几乎没有听说过虚拟现实的人,而且,想必大家都已经听说过Oculus Rift VR头显,可以说已经成为了这类设备的标配。市场上还有一些解决方案允许您将对角线为 4-5 英寸的智能手机屏幕用作 VR 眼镜的屏幕,例如 Durovis Dive 或轰动一时的 Google Cardboard,它们降低了每个人民主进入虚拟现实的门槛,但是,尽管如此,这项技术还没有变得无处不在:不是每个人都有对角线合适的智能手机, 为了利用同一个谷歌纸板项目,对于一个普通人来说,购买像 Durovis Dive 这样的设备是相当有问题的,虽然不贵,但值钱,不知道接下来该怎么处理它,更何况订购和等待 Oculus Rift 头盔本身对于普通人来说,原因有很多 - 从设备的价格来看,该怎么办还不完全清楚,最后等待订单交付的时间相当长。自然,除了价格之外,最重要的刹车就是平时的懒惰和熄灭的好奇心。

在这篇文章中,我将向您介绍我的虚拟现实之路,描述使用任何相对现代的 Android 智能手机或任何对角线平板电脑制作 VR 头盔的详细且几乎详尽的指南,这个项目将花费大约 5-8 小时的工作和 500-2000 卢布的费用,取决于您的意愿和能力,最后您将获得一个非常有趣的设备, 这将允许您观看全高清 3D 电影和照片、玩 Android 游戏,还可以使用头盔玩您最喜爱的任何现代程度的 PC 游戏。是的,具有头部跟踪和沉浸在 VR 中。

因此,如果你不懒惰,你好奇,请去,但我警告你,这篇文章里充斥着三打“土豆品质”的图片,总重量为 4 兆字节。

在最近一篇关于 Google Cardboard 的文章中,读者很欣赏这样一个简单而有趣的概念——一个带有一副镜头的纸板头盔,插入你的智能手机然后飞行,但许多人都有疑问“如何制作不同的对角线”、“如何在那里安装平板电脑”,最重要的是,“为什么我很难看到你的这个 3D”。作为 6.4 英寸索尼 Xperia Z Ultra 智能手机的拥有者,我也对这些问题很感兴趣,尤其是在我的朋友收到一个包裹和新发布的 Durovis Dive 之后,就像在谷歌纸板头盔中一样,你只能安装对角线五英寸范围内的设备,他给了我一副镜头,他买来制作自己的头盔。

尝试将我的智能手机靠在 durovis 潜水上,但没有成功——当然,有些东西是可见的,但它远非 3D 或至少是一张可以接受的图片,而且没有虚拟现实的味道。同时,该设备安装的第四个 nexus 显示出不错的效果,但 1280x720 像素的分辨率也无法提供充分的沉浸感。

因此,我手里有一部智能手机、几个镜头和一些乐观情绪,我决定花一点时间制作一个 VR 头盔。如果您已经拥有自己设计的类似头盔、Google 纸板或 durovis 潜水,并且您对阅读我的制造经验不感兴趣,您可以直接进入应用可能性的描述,我相信您会感兴趣。

工具和材料,制作头盔的必要设备


所以,我们首先需要的是一台装有 Android作系统的全高清智能手机或平板电脑,越现代越好,而对角线在大多数情况下并不重要。屏幕的长边是最重要的——它不应该小于瞳孔之间距离的两倍,但也不应该大很多——画面每一半的中心应该落入瞳孔的中心,这个参数是由镜头之间的距离和距离调节的,并且存在陷阱。作为参考,所述头盔中使用的智能手机的对角线为 162 毫米,长边为 142 毫米。

我们需要的第二件事是镜头。在这里你需要记住,镜头的中心有一个失真最小的工作区域,并且随着距离它的远离,图像质量会迅速下降,因此镜头的直径应该足够大,以不失真地覆盖眼睛和镜框两半中心之间的距离差异,但同时不要超过一定的限制,以便镜片可以彼此靠近或分开更远。 但要让视线靠近镜头的中心区域。下图示意性地描述了这一点。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能



我不会详述选择和搜索镜片的话题,以及一般的光学系统,因为在本文中完整描述这个广泛的主题是有问题的,有很多选择,我不知道你会有哪一个。就我而言,一副放大镜是在五金店以 160 卢布的价格购买的,如下所示:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

在试验和初始设置期间,决定拆卸它们的外壳,这真是令人惊讶 - 在每个这样的放大镜中都有一对相同的(至少肉眼无法区分)镜片,直径为 50 毫米,厚度约为 8-9 毫米,我们将与他们合作。

实际上,要制作头盔,您需要从最近的五金店购买以下材料和工具,就我而言是 Leroy Merlin:

1. 建筑泡沫,中等密度,20 毫米厚 – 0.5 m2,每张 60 卢布

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

2. 泡沫聚乙烯,20 毫米厚 – 0.8 m2,每张 80 卢布

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

3. 一卷双面胶带和一张 2 毫米的微瓦楞纸板 – 60 卢布

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

4. 宽松紧带或腰带,您可以使用魔术贴魔术贴 - 50 卢布适用于所有内容

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

5. 一套用于绘制和切割材料的工具 - 100 卢布

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

6. 透明胶带,或者就我而言是各种乙烯基薄膜 - 100 卢布

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

我马上说,在购买材料时,我并不知道所需的消耗量,但根据肉眼估计,购买的一张泡沫和聚乙烯应该足够 3-4 个这样的头盔,而这一切都没有以较小的数量出售。没关系,在开始工作之前,只需记住以下有用的技巧 - 大胆地切割和切割恰好一半的材料,不要害怕扔掉它再试一次 - 材料要花一分钱,而且你在头盔内的舒适度是无价的,所以最好更方便地重做零件,而不是忍受摩擦表面或挤压,反之亦然,最终产品的尺寸太自由。

此外,优化您的活动,我会提前告诉您,即使在开始工作之前,您也需要将应用程序和文件下载到您的智能手机上,您将在智能手机上尝试调整您的光学系统。

用于健康检查的程序和文件


1. MX 播放器 1.7.28 — 这个免费播放器允许您播放具有所需纵横比的所需文件,以及它的编解码器,具体取决于处理器的类型

2.任何并排录制的3D视频文件,可以是电影,节目和其他任何内容,在网络上搜索SBS HD

3. 如果你觉得很难找到SBS格式的电影,有两款出色的播放器Go ShowSBS-Player ——第一个在免费模式下展示了开源卡通《大象梦》,第二个可以播放任何常规视频文件,以便它们以SBS模式显示——也就是说,你不会看到3D,但你可以调整对焦和镜头移位, 在头盔内部,您会看到就像在从非常大的屏幕上观看普通电影一样

4. 当然,您仍然可以安装这些列表中的任何应用程序并使用它们,但我个人认为此选项不方便配置,但您仍然应该尝试它们以了解它们的内容:
www.divegames.com/games.html
www.refugio3d.net/downloads/

因此,您已经下载并尝试了上述方法,并选择了最适合您个人的快速工作。让我们同意您有一台对角线为 6-7 英寸的智能手机或平板电脑,两副镜头(您可以尝试使用一对,但我的图表仍然是两副,可能会有差异,请自行决定使用),安装程序并购买带有工具的材料。第一步是为第一副镜片制作第一帧。我用泡沫做的,从理论上讲,手头有一个中心钻头会很好,即使是在混凝土上,它被切割成插座,但一般来说,任何人都可以,例如可伸缩的木材切割机甚至指南针。我手头没有这些,所以我不得不用沃尔特·怀特美工刀切出圆孔,镜片直径比我的小,会完全不整洁。所以,第一个空白是两个镜头的框架,如下图所示。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

为了做到这一点,您需要将智能手机放在桌子上,屏幕朝上,弯腰,将镜头拿在手中,将它们放在眼睛前,试图找到焦距。如果没有观察到这种效果,移动或扭曲,请不要绝望,首先了解焦距就足够了,或者更确切地说,了解您需要从智能手机上取下镜头的量。这对镜片之间的距离呢?很简单——找到一个介于瞳孔之间的距离和画面两半中心(屏幕长边的一半)之间的距离之间的值。假设我们的眼睛之间有 65 毫米,屏幕是 135 毫米,它的一半是 67.5 毫米,所以你需要将镜头的中心放置大约 66 毫米,这对于第一个近似值来说已经足够了。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

现在,在标记必要的距离后,为镜头切出孔。粗略估计了泡沫的密度后,我计算出它足以坚固地安装镜头,如果你为它打一个直径略小于镜头本身的孔,我将切割圆的直径减少了 2 毫米直径,这与假设完全吻合。您的参数可能不同,但本质是相同的——让孔小一点。你需要把镜头下沉得浅,我凹了 2 毫米,下面会很清楚为什么,可能不用说将镜头放在同一个平面上会很好,也就是说,你们应该均匀地下沉它们。

第一阶段结束了,现在我们已经有了屏幕到镜头距离的布局,我们可以继续前进了。还记得我说过的两副镜片吗?从光学意义上讲,它们可能并不那么重要(事实上,它们确实如此),但它们对于进一步调整来说是无价的。假设您已经安装了如上所述的第一副镜头,在智能手机上打开了 3D 图像(您选择的游戏、电影),并且您正在尝试寻找三维度。一副镜片不允许我匆忙做到这一点。但当我把第二双带到眼前,玩完距离,找到合适的位置时,屏幕上立刻出现了一个立体图像。为此,您需要同时在平行于该屏幕和第一对镜头的平面上上下和向侧面移动镜头相对于屏幕。在图像中找到一个可用于追踪视差效果的细节,聚焦于它,并尝试连接每只眼睛中的图像以使其匹配。只要有一定的技巧,这就可以很快完成,但不幸的是,我无法告诉您加快这一过程的方法。我得到了这个测试台的帮助,这里下面的一对镜头已经是泡沫的,并设置在屏幕上,而上一对,用聚乙烯框起来,每个镜头都是分开的,我在眼前移动,寻找一个“立体”,整个结构下面有一个高度合适的屏幕:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

迟早会得到一个清新、多汁、时尚的青春3D,但由于电路中引入了第二对光学对,第一对焦设置会有点丢失。无需害怕,所需要的只是再次重新调整焦点。为此,您首先需要为刚刚调整的第二副镜片制作一个框架。我的建议是先复制你的第一帧,校正镜头之间变化的距离,然后在调整三维度后目视估计第一副和第二副镜头之间的距离。肉眼就足够了,这个距离应该与材料的厚度进行比较--好吧,从字面上看,对之间的距离是大于还是小于泡沫的厚度。如果它更小,一切都很简单,您需要将镜片安装在第二个框架中,深度稍深,达到所需的数量,但如果这个距离大于泡沫的厚度,您可以简单地将第一框架的凹陷一侧转向您,这样您就不必在两个框架之间围起一个垫圈花园。就我而言,这就是发生的事情,我将第一帧向后转动,将这些镜框与更凹陷的边相互折叠,并将镜片的每一侧稍微向内凹进。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

因此,我们有一种光学设备,可让您在智能手机屏幕上查看 3D。但是,当然,我们记得焦点,它首先通过插入第二副镜头来改变,然后通过将第一对镜头与另一侧翻转来改变,因此需要再次调整焦点。当您通过简单的动作捕捉焦点时,您需要注意这个距离,并制作一定高度的泡沫支撑,以便当您将第一帧安装在屏幕上方时,镜头中的图像将被聚焦。

在这里我需要说以下几点,在我看来,重要的属性,我不太确定它的性质,但我在测试对象中反复观察到它。生活中的许多行为都需要重复的方法,使用近似方法和迭代。显然,并不是每个人都明白这一点,但这种方法几乎总是有效的,如果您遵循简单的算法,并且会给出更好的结果——尝试并改进。所以就这个头盔而言 - 同样的故事,也许第一次你将无法制作两对正确的框架,例如,例如,我重新制作了一副三次,第二次 - 两次,我已经知道我会重做更多,因为有改进的想法。但是每次返工,质量都会提高,画面也变得更好,所以如果你做了几组,但你“没有成功”——不要绝望,休息一下,重新开始,继续。结果是值得的。

一个小提示——如果生成的目镜(我将称之为两对镜头及其框架组装在一起的块)具有良好的立体图像,但焦距相对于第一个近似值增加了很多,将目镜对半拆成两帧并调整距离,也许您会找到更优化的目镜——也许您需要向后转动其中一个目镜,或者将它们彼此分开。请记住,您需要达到最大有用像素数(否则将没有信息)和与屏幕的最小距离(否则会很麻烦)。如果你的焦距很美妙,而且由于某种原因立体底座失效,请用刀小心地切开镜头之间中间的泡沫,看看是否需要将它们分开,或者将它们拉近,然后根据情况采取行动。粗略地说,你会有两个目镜,每只眼睛都有自己的目镜,调整它们,如果可以的话,用双面胶带将它们粘在一起。

到这个阶段,镜头的故事就结束了,现在不管你是按照我的版本做光学方案,还是根据自己的考虑,以后就没那么重要了,剩下的故事适合任何选择。

头盔的模型组装


找到了从目镜到屏幕的总焦距后,我们必须基于它制作一个盒子,这里的选择甚至比镜头阶段还要多。但是,现在你手里有“心”,或者更确切地说是设备的“眼睛”,以及它最复杂的部分,所以以后会更容易。假设您设法正确地完成了上述所有作,并且您可以通过将目镜放在眼睛上并弯腰在智能手机上,自信地观察 3D 图像。玩完这个演示布局后,您可能会注意到镜头位置和目镜便利性的一些特征,您个人认为这些特征最需要优化。不要过多地限制自己,为自己、视力、鼻子和头骨的形状等优化和改进一些东西。

例如,制作目镜后,我把它放在脸上,意识到我已经把它涂在了泡沫砖上。舒适度恰好为零,这顶头盔还是要戴在头上一段时间!因此,在制作盒子时,我试图通过智能手机内部可靠和方便的位置来增加携带的舒适度。我不得不去掉泡沫的内部,用泡沫聚乙烯代替,图片中是黄色的。它更灵活,可以让你在大范围内扭转形状,所以头盔的内表面就是用它制成的。它应该紧贴眼睛区域和鼻子周围的面部,否则您会不断观察到呼吸时镜片起雾,请立即考虑到这一点。有一个想法是用建筑面罩或游泳面罩制作这部分,但它们不在手边,所以我自己做了,但是,现成面罩的选项可能对您来说更可取,我很高兴推荐它。我自己也决定将头盔的侧面制作在靠近头部的地方。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

另一点要记住的是智能手机的重量和它工作的杠杆,对支撑施加压力。我的 Xperia Ultra 重 212 克,将其从面部取下所需的距离为 85 毫米,加上盒子的自重 - 我想说,所有这些加在一起,让头盔在预订时感到舒适。他的后面有一条带子,这将在本节末尾的图片中看到,这条带子是由一根橡皮筋制成的,宽 40 毫米,可以将他拉得足够紧,直到他的后脑勺,但如果屏幕更重,或者控制杆更大(阅读焦距更长)--戴头盔会困难得多。因此,对于对角线或重量较大的设备的所有者,我建议您立即考虑使用第二条从鼻梁到后脑勺的横向带子在头上的安装方案,这样更方便、更安全。

此外,在这个阶段,您需要考虑另一个细微差别 - 声音的输出。我有好几副耳机,有封闭式的,也有开放式的,有耳塞等等,但想了想,我并没有围绕大而舒适的索尼MDR和大耳垫来打造头盔,而是选择了简单的耳塞。也许制作一个声音很酷的头盔对你来说至关重要,在这种情况下,你需要立即想象你将如何准确地表达耳机、它们的弧线和头盔及其支架。我有这样的诱惑,在原型制作阶段很快就消失了,但如果我打算制作它,我一定会在下一个改进版的头盔中回归它。无论如何,您需要在头盔主体上开一个与智能手机音频输出位置相对应的孔。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

所以,我的办公桌上放了这个设备——一个内表面稍微调整到头部形状的目镜。它已经舒适地贴合在脸上,宽度也很合适,对于它的制造,我只需要这个模板,从一块弯曲到头部形状的泡沫中剪下来,它将适合头盔的上部和下部进行一些编辑:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

早些时候,我们通过几种方法发现了目镜的焦距。现在您需要将智能手机屏幕放置在所需的距离。请记住,屏幕的位置应使其水平对称轴的高度与瞳孔之间的假想线重合,并且它需要相对于面部对称放置的事实已经很清楚了。就我而言,屏幕与目镜最近侧之间的距离为 43 毫米,因此我制作了泡沫的顶面和底面,以及两个侧面插件。原来是一个泡沫盒,放在屏幕上后,已经可以用于其预期目的,这就是需要上面显示的模板的地方。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

在这个阶段,对智能手机的焦点和位置进行了一些小的调整,之后对获得的结果进行了准确测量,并切割了外部纸板箱。它有两个目的——它可以保护相当脆弱的泡沫免受机械损坏,在初始实验阶段我很容易用手指按压它,我必须监控这一点,第二个也是主要目标是它是纸板将屏幕固定在正确的位置,将其压在泡沫上。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

结果,我们得到了这样一个盒子,前上方有一个盖子,智能手机隐藏在盒子下面。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

在头上试戴头盔,看够了各种 3D 后,我纠正了头盔内部的小不便,并制作了一个紧固件 - 头部松紧带。它只是用一个环缝制,并用双面胶带粘在纸板上,顶部贴有一个银色神谕,用于代替胶带。结果是这样的:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

顺便说一句,在这张图片中,您可以看到另一个用于连接我们稍后需要的 USB 电缆的技术孔。这就是为这款头盔捐赠镜片的测试对象头上的头盔的样子:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

那么,最后发生了什么。
尺寸:184x190x124 毫米
整备质量:380克
USB 输入/输出
3.5 毫米耳机插孔
可用屏幕面积 142x75 毫米
分辨率 1920x1020 像素

是时候继续我们旅程的程序化部分了。

VR 头戴式设备的可用功能


观看 3D 视频

首先想到的是观看 3D 电影。这是进入虚拟现实的一个非常简单易懂的切入点,尽管更严格地说,这是一个离它不远的门槛,即上一步。但是,为了不贬低此类娱乐的优点,我告诉您,戴着头盔观看 3D 电影是一项非常有趣和有趣的活动。我只看了两部电影,所以还没有厌倦,但感觉非常好:想象一下,你离你直视的墙壁有一米半。不要转头,试着环顾周围的区域 - 这将是您可以使用的屏幕。是的,分辨率很小 - 每只眼睛只能从全高清电影中获得 960x540 像素,但它仍然给人留下了相当明显的印象。

要以这种形式观看电影,您需要一个免费的 MX Player 播放器,为您的处理器安装了编解码器,我有 ARMv7 Neon,实际上还有一个视频文件。在各种种子跟踪器上很容易找到它们,该技术称为 Side-By-Side 或简称 SBS,因此请随意搜索这些关键字。播放器能够调整正在播放的视频的纵横比,这对于原本会垂直拉伸到全屏的 SBS 文件非常有用。就我而言,我需要进入设置 - “显示” - “纵横比”并选择“手动”将纵横比设置为 18 比 4,否则您将获得垂直拉伸的图像。我试图寻找其他具有类似功能的播放器,但我没有找到它,如果你知道的话,把它添加到你的知识存钱罐中。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

总的来说,我没有什么可补充的了——眼前的普通 3D 电影院,一切都很像去电影院,或者戴着偏光眼镜在 3D 电视上观看,例如,但同时也有差异,一般来说,如果你喜欢 3D——你应该尝试一下 VR 头盔。

适用于 Durovis Dive 和类似系统的 Android 应用程序

整个故事大体上都是从这一点开始的。基本上,以下三个链接显示了目前几乎所有可能的 Android 程序:
www.divegames.com/games.html
www.refugio3d.net/downloads/
play.google.com/store/apps/details?id=com.google.samples.apps.cardboarddemo

我们需要什么才能获得舒适的 VR 体验?显然,纵杆或任何其他控制器,例如无线键盘。就我使用索尼智能手机而言,自然且合乎逻辑的选择是原生和原生支持的 PS3 控制器,但由于我手头没有这个,但结果证明是老式的 Genius MaxFire G-12U,我连接了一个 microUSB 转 USB 适配器,将其连接到智能手机,甚至毫不惊讶它立即开始工作,就像在设备界面中一样, 和个人程序。

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

还需要耳机,因为沉浸在没有声音的虚拟现实中是不完整的。我有普通的耳塞,你可以自己弄清楚哪个更方便。

我应该对本节中介绍的应用程序期待什么,我不应该期待什么?事实是,委婉地说,所有针对虚拟现实主题的 Android 编写的应用程序都非常稀缺。如果你不戴头盔运行它们,并尝试看看它是什么样的虚拟,那么你有可能不想购买或制作头盔。坦率地说,它们非常原始和悲惨,并不代表任何超级有趣的东西。

但。当你把头戴在头盔里时,一切都变得完全不同,就我个人而言,对一切都持怀疑态度的我永远不会相信,尽管如此。

要考虑的主要事情是头部运动跟踪。即使它的实施很差,或者放慢了速度,这也是一个全新的、未开发的感觉领域,相信我,在头盔出现之前,你已经很长一段时间没有这样的感觉了,自从与攀岩者一起在山上冒险、在海底散步、在森林里过夜和其他我们都非常喜欢的大规模谋杀。头盔提供了一种完全不真实的真实感,我为双关语道歉,任何,即使是最差的图形,里面的图形都会看起来像糖果,总的来说,我不得不说 - 如果你喜欢玩游戏,或者感觉新鲜 - 头盔是适合你的设备。

根据你自己的经验:想象一下,你在 1998 年,比方说,一家波兰电脑游戏制作工作室制作了一个演示,你登陆月球,离开模块,看到标志性的美国国旗,看起来像一块钉在棍子上的纸板,卡在地上,天空中的旗帜上方有一个字体极差的铭文“收集工具,还剩下 3 个”。同时,图形由非常非常简单的元素组成,其中单调复制的星空和脚下方形重复的地面占据了屏幕 98% 的可用区域,在某个地方你可以看到几个像素的你必须找到的“工具”。事实上,没有。你已经可以看到它们了,你只需要步行 10 分钟就可以了。快走。在月球上。没有声音。通过重复的精灵。完全没有行动。

告诉我,您需要多少秒才能从计算机甚至智能手机中删除此游戏?完全。而在头盔中,这个奇迹让你体验到这个星球上唯一一个人的破坏和孤独。不是开玩笑。玩了 15 分钟后,我发现自己非常害怕自己独自一人在月球上,在星星的兜帽下,我不知道该怎么办。

这或多或少与所有其他游戏和应用程序相同。他们很可怜,他们令人毛骨悚然,但同时在头盔里--他们把你送到 15-20 年前,有些甚至更早,去玩他们玩过的游戏,而不是花时间玩。到目前为止,我只有一个问题要问开发者——为什么没有一款游戏有针对这种情况的完整情节?一场比赛本可以挽救局面,因为现在,在 Android 上向人们展示虚拟现实,没有太多可展示的东西,一切都带有保留意见“这是一个演示,你不能在这里拍摄”,是的,“就是这样,整个游戏完成了,是的,在 4 分钟内”。顺便说一句,这些应用程序几乎都是用 Unity 编写的,更令人惊讶的是它们的低水平,或者我不知道如何搜索。

但反正你别听我的,自己试试,告诉我你的版本,我感兴趣。并用参考资料来调味它,我会非常努力。例如,我什至安装了一个名为“厕所模拟器”的演示。因为。

一个小复活节彩蛋事实上,在 Durovis Dive 的网站上有一个 指向 quake-2 的链接,这是一个游戏的演示版本,安装在 Android 上并具有 SBS 显示模式,在此页面底部有关于如何执行此作的详细说明。唯一在自动模式下不起作用的是没有解压单独的存档,所以在正在运行的游戏的设置中会有镜像的链接,你需要在桌面的浏览器中重新输入其中一个,下载一个自解压存档,从那里拉出 pak0.pak 文件并将其放在手机中安装的游戏目录中,我有它叫做 baseq2。

之后,同样的 Q2 为我启动了没有任何问题 - 它运行得非常快,一切都清晰可见。30 秒后它变得很可怕,只是脊背发凉,但我不会进一步描述,你自己试试。不幸的是,无法截屏,而且纵杆到目前为止只能在“漫游”模式下工作,它不知道如何拍摄,您将不得不选择设置。


因此,安卓开发者的所有这些迟缓(安卓开发者注意!)让我想到了这个想法——好吧,没有适用于安卓的游戏——让我们尝试台式电脑,记住虚拟头盔的主要优点——一个巨大的屏幕,沉浸在图像和头部位置跟踪中,尽量不要丢失它们。

作为 VR 设备连接到您的计算机

老实说,这种联系的想法立即出现,但对于如何、做什么以及以什么顺序做,却没有一个想法。因此,我在绘制、切割和粘合零件的同时,一路上我都在思考从哪里获取有关如何从计算机显卡中显示图像的信息,同时将头部跟踪,即陀螺仪和加速度计数据传输到计算机。所有这一切,最好是最小的延迟。

你知道,已经找到了解决方案。它由三个阶段组成,每个阶段我们将分别考虑,首先我将描述工作选项,然后介绍那些在我的情况下无法作但可能对您有用的选项。

在计算机上创建 3D 输出。


事实证明这相对容易,但如果不立即知道,你可能会迷路。因此,可以让您以立体声输出玩成熟的 3D 游戏的理想计算机具有基于普通 NVidia 或 ATI 芯片的显卡,越现代越好,而且非常重要的是,驱动程序具有调整任意分辨率的能力。如果您有一台笔记本电脑(在我的情况下)或驱动程序不支持任意分辨率的显卡,头盔中的图像将垂直拉长,一个可能的解决方案,不安全且相当乏味,是挖掘注册表并在那里写入权限。再次热烈欢迎您的选择!

通常,您需要为支持任意分辨率的显卡安装驱动程序版本。如果您的智能手机和显示器的屏幕上有 1920x1080 像素,那么一切都非常简单 - 在显卡的设置中,您需要创建 1920x540 的任意分辨率,然后将其应用到显示器上。您将看到屏幕的工作区域如何变小并位于屏幕中间。如果屏幕上的图片如下所示,那么您已经做对了一切:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

因此,一切都在配备 NVidia 显卡和最新版本驱动程序的普通但功能强大的台式计算机上进行了测试。满足条件很重要:当您以立体模式开始游戏时,帧的每一半上的图像不会扩展。

您需要的第二件事是 下载 3D 驱动程序 ——它有一个为期两周的完整试用版,允许您在外围设备上以任意配置、并排、上下和浮雕显示三维图像,一般来说,随心所欲。

以通常的方式安装,运行 TriDef 3D 显示设置实用程序并选择并排选项,现在当您从此驱动程序运行游戏时,它们将处于立体模式“每只眼睛半帧”。如果您安装了游戏,您可以打开 TriDef 3D Ignition 实用程序并搜索已安装的游戏,窗口中会出现游戏的快捷方式 - 瞧,您可以使用了。

我没有安装任何游戏,所以我安装了 Steam 并以 99 卢布的价格购买了打折的 Portal 2,是的,这是广告。这里是你需要注意的一点 - 提供立体声输出的驱动程序可以为任何能够全屏运行的游戏输出立体声,但不能为面积小于桌面大小的窗口创建输出。记住这一刻,低于它就会变得至关重要,就像公牛身上的一块红抹布。

一般来说,如果安装并配置了驱动程序,则购买并启动了游戏,屏幕上看起来像这样:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

您可以进入下一阶段。

将图像从计算机传输到智能手机屏幕

有几种方法可以做到这一点,从市场上众多的图标来看,有很多程序可以让您传达您需要的内容。我很“幸运”,在我找到一个方便可行的应用程序之前,我尝试了 Google Play 上其他几个令人沮丧和令人沮丧的工艺品,我很抱歉那里允许任何渣滓。我花在搜索和配置应用程序上的时间比制作设备的时间还要多。此外,我必须购买其中一个应用程序,如果一切都不好,一切都会好起来的。但首先要做的事情是:您肯定需要在计算机和智能手机之间建立本地 Wi-Fi 连接。

您还需要一个良好且快速的“远程桌面”,该桌面在远程登录时不会注销您的桌面帐户。这样的程序原来是免费的 Splashtop,还发现了一个半付费的 iDisplay

付费的那个 - 一切都很好,只是它不允许您将顶部和底部切割的屏幕放置在显示器的正中间,所以我不得不放弃它,但总的来说它运行良好,甚至有关于 habr 的评论,我从哪里得到它。但是 Splashtop 可以正常工作,所以安装它。

这种类型的所有程序都按照大致相同的方案工作 - 您需要下载并安装桌面的主机版本和智能手机的接收器版本。我认为这不会有问题,所以我不会描述这些过程,五分钟的手鼓有一些事情要做——下载、安装、注册、设置、连接。我唯一要提到的是,您需要转到设置并指定您的无线连接应在本地使用,为此您需要在 android 版本中明确指定计算机的 IP,您可以使用命令行中的 ipconfig 实用程序找到此地址。实际上,这些都是所有设置,一切都应该已经正常工作,例如,这里是当前时刻智能手机的屏幕截图:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

如果你在3D Ignition实用程序下运行游戏,它会同时出现在你的手机屏幕上,同时出现在你的显示器上。或者不是。跟随花招:从游戏中提供立体声图像的驱动程序需要全屏(如果您选择“窗口”模式,立体声将不起作用,游戏将正常启动),并且智能手机的桌面访问程序会大喊“我无法运行全屏, 对不起,是的,完全“,并且只能在其上显示桌面和窗口。

因此,最微妙的一点。最有可能的是,您将能够玩任何在“无窗口窗口”模式下运行的游戏。我不确定为什么以及这种模式在游戏中存在的位置,出于这个原因,或者出于其他原因——但事实证明它是一种救赎:一方面,它欺骗了桌面,并告诉它它以全屏方式启动了游戏,另一方面,正式地给智能手机一个窗口,尽管没有框架并扩展到全屏。当狼都得到喂养并且羊群安全时,情况就是如此。

所以我很幸运,我从 Steam 下载的 portal-2 正是支持所有三种启动模式的游戏。因此,您需要检查哪些游戏可以以这种方式运行,哪些不会。

现在你可以开始游戏并戴着头盔参加比赛。但是,正如他们所说,如果没有头部运动跟踪,图片将是不完整的。

启用头部运动跟踪

你已经读到这里了,我对此表示祝贺。我不想欺骗你,这一点是最困难和研究最差的,但是,不要绝望。所以。

第一个想法是“反汇编” Oculus Rift SDKDurovis Dive SDK,因为源代码属于公共领域。也许我应该这样做,但我不是程序员,我对此一无所知。因此,我的目光转向了将智能手机在太空中的位置传输到桌面的现成解决方案。事实证明,据称有大量的程序可以做到这一点。从描述来看,几乎每个人都是这样。再一次,我经历了几十个带有甜蜜承诺的程序,但实际上它比通过程序在智能手机屏幕上显示图像更可怕、更恶心和更可怜,更重要的是,甚至比我上面描述的那些 durovis 潜水演示游戏更可怜。如果在这个阶段你遇到一波挫败感,那么就是这样,“再见头盔”。尽管如此,还是找到了必要的(有保留的)计划。但首先,美中不足——Monect、UControl、Ultimate Mouse、Ultimate Gamepad、Sensor Mouse——这些都不起作用。尤其是此列表中的第一个 - 描述说 Monect Portable 提供了一个

FPS模式 — 使用陀螺仪瞄准目标,就像手中的真枪一样,完美支持 COD 系列!
结果,我以惊人的 60 卢布买了它,结果证明这是不真实的。这样的模式在应用程序中根本不存在!我很生气。

但是,让我们继续讨论成功的选择。您将再次需要下载名为 DroidPad 的程序的主机和客户端版本。正是她在设置其中一种模式时,使得通过无线访问实时执行必要的和传输传感器参数成为可能。算法如下:在桌面和智能手机上安装程序,在智能手机上运行,选择“鼠标-鼠标使用设备倾斜”模式,然后启动其桌面版本。

如果一切都按此顺序完成,则连接应该可以工作,瞧 - 您可以控制计算机屏幕上的鼠标光标!到目前为止,它很混乱,但等等,我们现在就设置它。就我而言,在应用程序的 Android 版本中,设置窗口的屏幕截图如下所示:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

您可以指定设备的名称,但最好不要触摸端口 - 它默认工作,最好不要触摸工作端口。在桌面版中,一切都有点复杂,我有这些设置,但它们仍然需要优化,所以它们仅用作指南,不再使用:

在一个晚上用自己的双手组装一个虚拟现实头盔,具有高清图像和头部跟踪功能

以下是电脑屏幕上 X 轴和 Y 轴的设置,以及手机传感器的强度。这一切对我来说到底是如何运作的,仍然是一个黑匣子,因为应用程序的开发人员没有提供任何文档,所以我“按原样”提供信息。我完全忘记补充一点,我的智能手机上安装了一个程序,可以控制横向或纵向应用程序的启动,并且所有针对此想法进行测试的应用程序 = 在相册模式下测试。该应用程序称为旋转管理器,智能手机已全局禁用自动定向。

相应地配置您的应用程序后,您必须根据前面描述的算法将智能手机连接到计算机(对我来说,与指定顺序的任何差异都会导致应用程序终止),并且将智能手机握在手中,因为它将位于头盔内,尝试调整设置 - 交替调整桌面滑块并单击 Android 版本窗口中的“校准”按钮。我马上告诉你——经过相当短的尝试,我设法相对体面地调整了角度和旋转,但随后,调整得更准确,我没有想过要给它们拍照就取消了这些设置,而现在在屏幕截图中的那些只是之前的近似值,感觉仍然更好。还有一点是,所有这些滑块都非常灵敏,将智能手机握在手中的一个位置很不方便,以免随意移除光标,因此您必须不断断开连接和配置,然后连接和检查。一段时间后,文章中关于这个主题的信息会更新,但也会更新当前的设置 - 在游戏世界中它看起来非常令人印象深刻。

那么,你有什么感受呢?目前,由于时间不够,我已经安装了游戏 传送门 2 和免费机器人射击游戏 霍肯,由 Steam 提供。至于传送门,你很快就被周围的气氛和声音所奴役,这种沉浸感如此之强,没有什么可以比拟的,除了10年前凌晨四点在电脑前的聚会,一切都差不多是敏锐的感知。但是,如果周围有疲劳和黑暗,那么在头盔中,它是一种略有不同的、更生动的相同存在的效果。但第二款游戏,你坐在经典的“巨大的人形机器人”中,让我感到惊讶。头上戴着头盔,游戏中投射在头盔表面的现实变得更近、更温暖、更像灯一样,而且非常快。出奇地快。

不要以为 VR 头盔引起的感觉对每个人来说都是一样的,但对于所有的“豚鼠”,我可以自信地说,绝对每个人都喜欢这个设备,评论非常积极和感兴趣。因此,我大胆地推荐给大家,花一天时间制作这款头盔,并亲自评估一下。我个人的目标就是这样——为了快速满足我的好奇心,不用花钱和时间等待,我花了大约三天的时间寻找和设置一切,现在我正在将接力棒传递给你,已经以浓缩的形式。

就我个人而言,我决定我很可能会制作这款头盔的第二个版本,并进行细微的改进和改进,然后购买 Oculus Rift 的新消费者版本。事实证明,它非常有趣且内容丰富。

我真的很期待 Android 的新应用程序,写这篇文章的部分原因是希望其中一位开发人员会感兴趣并给公众一些兴趣。而且,一个小愿望——如果您知道任何我没有提到的程序和解决方案,但可以提高文章的质量并提高设备的性能——请在评论中写下它们,我一定会为子孙后代添加有价值的信息。

TL;TL;DR:本文描述了一种基于装有 Android 的高清智能手机或平板电脑制作虚拟现实头盔的快速、高质量的方法,完整的分步说明和此过程的一般原则,还描述了使用所得头盔的主要可用方法:观看 3D 格式的电影、Android 游戏和应用程序,以及将头盔连接到计算机以让自己沉浸在桌面 3D 游戏的现实中。

来源: habrahabr.ru/post/228501/