Oculus Medium移动工具的开发日记_砍柴网

首页 > 科技头条 > VR/AR >

Oculus Medium移动工具的开发日记

2017-12-30 14:35

Oculus Medium是一款专为Touch设计的沉浸式VR体验，你可以在VR环境之中雕刻，建模，绘制和创建有形对象。Oculus最近添加了Move Tool，它允许用户抓拿，移动和重新设置雕刻作品的一部分。“Move Tool”是Medium“Summer of Move”（1.2版本）更新的主要功能之一，这也是Medium用户长期以来的反馈要求。

在本文中，我们将会讨论如何异步安排对性能要求巨大的操作。从创意应用到游戏，这对所有需要同时维持VR帧率和运行计算量巨大的任务的软件而言都十分有用。
1。 实时预览
我们将Move Tool操作分为两个阶段：第一个是实时预览；第二个是所需时间更长的移动操作处理。
在第一阶段中，响应时间是关键。你需要能够通过细微的手部运动来操作雕刻。在雕刻时，“看起来逼真”与“看起来不对劲”之间只是一线之差，所以Medium必须允许你移动双手并实时判断结果。
为了实现这一点，第一个阶段要通过Move Tool的位移字段来抵消顶点着色器中的顶点位置。这对性能几乎没有影响，因为它只是位移矢量的简单计算，以及添加到每个顶点位置的偏移量。然而，这个阶段确实需要一些可以影响渲染质量（但不是性能）的捷径。例如，这个阶段不会重新计算网格的顶点平均量，因为它正在变形，而且我们不重新计算环境遮挡。
在第二阶段中，我们将处理对性能要求更高的任务：我们变形三角网格，将变形网格转换回一个指向距离场，并从SDF重新生成三角网格。这能有效重新拓扑化曲面，从而允许操作均匀镶嵌网格的后续移动操作。作为从SDF重新生成网格的一部分，我们重新计算顶点平均量和环境遮挡。在这个阶段之后，雕刻将再次正确地呈现。
尽管我们尽可能快地优化这一代码，但第二阶段的所需时间要远多于单个90Hz帧。小幅度的移动看上去和感觉上近乎是立即执行，而更大幅度的操作则需要数秒时间。时间与正在移动的数量成正比。
当第二阶段超过1秒的时候，我们将显示Medium标志的动画，以说明操作需要一定的时间，而Medium不接受任何新的指令。我们将其称为“hourglass hands（沙漏手）”，因为这类似于Windows的沙漏标志或OSX的旋转指针。

你可以想象，你正在通过Move Tool告诉计算机一系列的指令。当你按下扳机键的时候，你正在告诉电脑“让我告诉你我想要你做什么”；当你释放扳机键时，你正在告诉计算机“现在为我生成结果”。当你告诉计算机你希望它为你做什么的时候，你能够实时在VR中使用双手是关键；但当你告诉计算机生成结果时，即使等待几秒钟也不会造成太大的影响。只要你的沉浸感不受干扰（眼睛接收90Hz的帧，系统能够继续精确追踪你的头部和手部运动 ），这一切都可以接受，因为你的虚拟现实幻觉不会遭到破坏。
Medium中的音效设计强化了正在发生的事情。当你按下扳机键并开始一个移动操作时，我们会播放一个弱拍音效；当你释放扳机键并完成移动操作时，我们会播放一个强拍音效。当第二阶段完成时，我们会播放最后的“叮”音效。这种音效设计能够有效告诉你计算机正在做什么。桌面端的内容创作应用很少使用音效，但对于虚拟现实应用而言，音效是沉浸感的一个重要组成部分。
显示沙漏手和阻挡用户输入的做法借鉴了桌面GUI应用。如果一切都足够迅速，我们将不需要这样做，而这是最理想的情形。但对VR应用中的冗长操作而言，这是一种切实可行的手段。
于1968年发布的论文《Response Time in Man-Computer Conversational Transactions》中写道，100毫秒或以下的操作将令人感觉是实时发生；1秒是不影响用户思路的界限；10秒是保持用户注意力的界限。对于虚拟现实世界中的临场感，Medium生成新一帧的所需时间需要靠近10毫秒。Move Tool能够符合这一系列的界限：第一阶段运行在VR帧率之下；第二阶段在1秒内结束，或者如果超过1秒，我们就会显示沙漏手。

2。 异步雕刻操作
VR模拟必须每90Hz或约10毫秒产生新的一帧，但Medium中的许多操作都比生成10毫秒帧需要花费更长的时间。答案？这当然是我们在异步运行的线程上计算这些冗长的操作。这是另一个能够为所有VR应用提供帮助的解决方案。
当你在Meidum中添加新的黏土时，在完成操作和显示结果之前通常会出现数十毫秒的延迟。但由于每90Hz将提供新的一帧，所以你的头部和手部会实时移动。只要头部和双手实时移动，你就不会注意到雕刻操作出现延迟。虚拟现实技术要求几乎是即时对头部和手部运动作出响应，但应用程序的结果仍然可以以较低的频率运行。
想象一下你正在使用自己最喜欢的桌面应用：在现实世界中，你的眼睛会从现实世界中接收到稳定的光子流，但计算机本身可能以更低的频率在平面屏幕上生成帧。这正是我们在Medium中的做法，也是我们可以把性能要求苛刻的3D内容创建带到实时VR应用的解决方案。
这类似于电脑屏幕上的鼠标光标。你期望鼠标光标可以立即响应你的手部操作，但你不一定期望应用程序能以相同的速度运行。
在幕后，Medium几乎像是两个不同的程序。一个程序负责雕刻和网格处理，而另一个程序则负责所有的渲染。雕刻和网格操作不会以VR帧率执行，但渲染需要。
部分帧在渲染时会下降到90Hz。对于这些帧，Medium将依靠于异步时间扭曲和异步空间扭曲来流畅地Rift提供新影像。
从下面你可以看到Medium的应用内分析工具。顶端的橙色条是每帧的时间，而你可以看到其相当稳定。视频中出现了多次移动操作，而每一个都需要数帧才能完成。有4个CPU线程正在进行中，以蓝色/紫色条显示。最顶端的线程是主线程，其正在持续地生成帧；后三个线程则在执行移动工具任务，与主线程异步运行，并需要数帧才能完成。它们不会影响整体的帧时间。

Medium使用单个CPU线程进行渲染，而这产生了供GPU使用的OpenGL指令。GPU渲染供Rift头显显示的立体影像。这两个线程每10毫秒将产生一个影像。
其余的CPU硬件线程执行雕刻操作和其他较低优先级的任务，如视频记录，在后台加载资源等等。雕刻操作可以在所有可用线程中并行工作，而且我们使用英特尔的ISPC编译器来为性能密集型代码生成SSE4和AVX2代码。
雕刻线程和主线程通过producer/consumer FIFO相互连接。由于新的网格数据是由雕刻线程生成，因此将其放入FIFO中。主线程花费最多两毫秒从该FIFO中复制数据，并为GPU做好准备。一旦经过两毫秒，我们就停止从FIFO中复制数据，然后继续渲染。我们在CPU帧时间预算中包含了两毫秒，以避免在更新数据时出现故障。当FIFO变满时，雕刻线程将停止，并等待主线程从FIFO中使用数据。这可以平衡工具操作的延迟，从而保持一致的帧率。
我们目前使用CPU来负责雕刻和网格任务。GPU可以更快完成相关任务，但GPU已经被渲染占用，特别是对我们最低规格的设备而言。即便存在，最低规格GPU上的空闲时间也是相当少。因此，尽管GPU在这方面可以轻松击败CPU，但毕竟CPU拥有更多的可用资源。也就是说，我们正在研究让GPU负责更多的雕刻任务，同时仔细观察，并确保我们不会影响帧速率。
确保异步雕刻操作的延迟不会变得太长非常重要。例如，如果你按下扳机键来添加黏土，但半秒后仍然没有任何东西显示，这就会令人感到沮丧。当延迟时间过长时，应用程序就会感觉迟缓。即使应用以90Hz显示帧，这种迟缓也会导致用户感到疲劳。我们正在不断调整Medium的操作，希望尽可能提高其处理速度，但没必要追求异步操作在10毫秒的框架内完成。
3。 总结
这是关于Move Tool系列文章的最后一篇博文。在整个系列中，我们介绍了如何使用Touch控制器创建位移场；我们是如何将位移场应用于3D对象；讨论我们创建的三个原型；Medium是如何将三角网格转换为有向距离场（signed distance field，SDF），而这将如何为其他类型的雕刻操作提供帮助；以及如何异步安排对性能要求巨大的操作。
我们希望这是有用的信息，可以帮助你设计和开发自己的VR应用程序。
来源：映维

共有评论0条

相关推荐
Oculus 创始人拉奇为在战争中使用AI辩护
Mistral发布Medium 3：前沿性能与低成本兼具，含多种企业功能
Oculus创始人支持苹果Vision Pro头显外置电池方案
Oculus创始人称赞苹果VR AR头显“非常好”
阿联酋航空在 Oculus 商店推出航司虚拟现实应用程序
Oculus创始人离职内幕：Facebook强迫他支持某政客
Oculus创始人去年被炒或因政治观点令公司不满
Facebook重组Oculus部门 改变业务重心
《泰坦降临》工作室暗示与Oculus合作的VR游戏是AAA级
Oculus再次展示可变焦VR头显原型机
Facebook刚刚发布的Oculus Go一体机，可能也救不了VR行业
让网络浏览器秒变VR社交体验 Mozilla推出新功能Hubs
2018年Oculus Launch Pad应用程序开发者项目正式启动
2018 Oculus Launch Pad开发者计划开启
Oculus Go刷新率达72Hz，支持固定注视点渲染
Oculus资助，Rift VR游戏《Defector》公布
Oculus SDK加入NVIDIA LMS技术 以提升显示效果
抢“黄金帐号” Oculus Rift两周年抽奖免费送100款游戏
杜绝滋生细菌，如何正确给Oculus Rift做好卫生清洁保养
紧跟Steam，Oculus推出硬件调查统计报告数据平台
2018年，Oculus将如何继续定义VR？
为提升AR对象分类，Facebook开源Detectron计算机视觉算法
Oculus大量招兵买马表明Facebook加速VR / AR计划
Facebook 掌权后，Oculus的“去游戏化”之路
2018年将是Oculus发力优质VR内容的一年
如何为Oculus Rift设置TPCast无线适配器指南
Oculus推“Oculus Start”计划，让小团队也能顺利开发VR内容
独立VR头显Oculus Go文件: 有两种型号可选择
VR正在让世界变得更加美好
Oculus新款VR头显曝光 同时支持PC/移动端驱动！
腾讯VR游戏《猎影计划》登陆Oculus Home
Oculus Go开发者版本发货 或搭载骁龙820芯片
皮克斯首款VR内容《Coco VR》登陆Oculus Rift
VR冒险游戏《Chronos》将支持Oculus手柄
Oculus正在为社会公益研究项目提供资金支持
Oculus联手索尼影业英国博物馆展示一系列WebVR应用
Medium启动付费订阅项目：帮助主流媒体吸引读者
小派8K众筹245万美元 超越Oculus成为VR行业新纪录
Oculus Connect 4都搞了哪些大事？一篇文章带你全面了解
Oculus联合创始人：每个人对VR的期待走得太快了
Oculus第二代Santa Cruz体验：显示效果出色，定位优于PSVR
20亿美元收购Oculus零回报 扎克伯格这个跟头栽大了
扎克伯格每次收购都大获成功 但这次恐怕要栽在Oculus上
Oculus开源DK2，开发者自己也能生产专属VR头显
Oculus创始人体验小派8K 他如何评价中国VR？
《VR红黑榜》融资兴邦的Magic Leap，这次能像Oculus一样做点实事?
帕胖加入VR加速器Nordic VR Starups任导师
Oculus推出软件限时退款政策
Oculus推出软件限时退款政策
Oculus人事频繁变动，Facebook不再重视VR内容了？
尽管麻烦缠身，但Oculus还在用“亏损”来打造玩家社区
Oculus开通VR体验设计博客，为VR开发者分享经验教训
Facebook关闭Oculus VR，VR内容行业迎来大变革
VR将能进行直播，Oculus为Gear VR添加直播功能
在搞独占这件事上，Oculus还不是索尼的对手
拉到4亿投资是一桩美事，但Unity为何还嫌钱太多了？
Oculus正式发布1.15更新：已完全支持三个传感器设置
React VR使Oculus Home在Gear VR上的载入速度提升了三倍，耗电减少30%
新版Oculus Home在Gear VR运行更快更省电
ZeniMax的贪与恶：VR侵权诉讼不是开始，也不是结束
Oculus副总：我们会笑到最后，没人会记得去年的竞争
Facebook解散VR内容工作室Story Studio，集中投资外部团队
为什么Oculus内容工作室的关闭对VR电影制作者是个好消息？
叫板HTC Vive？Oculus获眼动追踪专利或应用于VR头盔
说出来你可能不信：Oculus将缺席今年E3大会
AR将在何时、如何改变我们的生活？Oculus首席科学家这么说……
Oculus首席科学家：真AR将无处无在，但还得等5到10年
Oculus是如何从VR界"扛把子"变成Facebook一个内部团队的？
他20岁成立公司，个人净资产7亿美金，如今却黯然出局
麻烦缠身：Oculus联合创始人拉奇离开Facebook
Facebook聘请苹果资深高管开发Oculus VR硬件
Oculus负责人：我们不可能永远自己制作VR内容
再降价？Oculus要在平价之路走到底？
Facebook VR计划面临威胁：法院或禁止Oculus使用侵权代码
科技晚报：特斯拉将停产一周，特朗普也救不了Twitter
招聘信息泄密 Oculus正开拓AR业务
为增加优质VR内容Oculus开源VR浏览器Carmel
Facebook旗下的Oculus涉嫌窃取专利？谁才是VR技术的先驱者
Oculus被起诉窃取专利：或断送Facebook“VR开拓者”美誉
缺席CES的Oculus，或将被Facebook“吸收”成VR部门?
Oculus 收购眼动跟踪技术公司 The Eye Tribe，用眼睛控制 VR 体验指日可待
BBC 在 Oculus 上首发 VR 电影，优质内容更利于 Facebook 实现 VR 社交野心？
人人可当VR艺术家 Oculus推出《Quill》教学视频
VR社交的一大步?Oculus两款应用登陆GearVR
在VR中穿越重生，Oculus Avatars正式上线
科技晚报：IBM应特朗普在美招人，苹果手表升级也变砖
Facebook 年底重组 Oculus，分拆 PC 及移动端 VR
Oculus拆分为PC和移动两大部门 CEO艾里布转战PC
Oculus Touch大部分预购订单仍未发货
VR的未来：不在独立设备，而在移动平台上
Facebook将重返中国 Oculus入华还远么
黑色星期五，三大头显的折扣优惠计划
Oculus Rift将支持低端电脑 消费者会愿意买单吗？
Oculus更新ASW技术，张艺谋再透VR布局
VR日报:微软表示游戏将是让用户对HoloLens心动的理由
Oculus再发黑科技，可使Rift VR适配低端主机
今天让我们来聊聊VR手柄，没有它们VR就是搞笑的
独家|VR/AR竞争真相:Oculus对手不是HTC,而是更恐怖的东西
媒体偏心报道PSVR远超Rift与Vive 索尼心想怪我咯
育碧首款VR游戏《Eagle Flight》正式登录Oculus Home
Oculus大手笔收购爱尔兰LED初创公司
永远不可适用！ Oculus Gear VR停止支持Note 7
Oculus为了保护GearVR声誉 狠心移除对Note 7的支持
VR日报：Oculus Touch预售今日开始
帕胖不在的开发者大会：FB真要接管Oculus？
Oculus在OC3大会上各种投钱 投1000万美元发展VR多元化
这是逆袭的节奏？Oculus Rift后期爆发有四招
干货|VR未来五年七大技术方向，Oculus首席科学家权威解读
开发者福利！Oculus怒砸500万支付虚幻引擎费用
Oculus开发者大会上 扎克伯格亲自演示社交新玩法
Oculus新的渲染技术让VR入门级PC成本降低至499美元
Oculus“勾搭”到好基友迪斯尼 双方合作打造VR体验
Oculus Touch电池续航寿命提高40% 手势识别多样化
VR日报：百思买Oculus Rift体验店已超500家
Vive的房间追踪，为何在Oculus眼中是个伪需求？
VR日报：《星球大战》官方VR游戏今天正式发布
VR日报：Oculus Rift进军韩国市场
相爱相杀，Valve与Oculus也曾经“爱过”
虽新款却仍入门级的 Gear VR，真配得上要对抗 iPhone 的 Note 7 吗？
VR的三国之争：浅谈三大主流VR显示设备
科技晚报：谷歌推自己的智能机，微软近期将有大动作
揭秘被人遗忘的苹果上世纪虚拟现实项目
同样是被捧得火热的VR产业，中国厂商和Oculus的差距究竟在哪里？
关于VR产品的前世今生，看这一篇文章就够了
2016年 VR发展元年也是分化年
Oculus创始人帕胖和HTC总裁王雪红高谈阔论虚拟现实
Oculus 虚拟现实软硬件想要入华，这事儿 Facebook 都没做到
三大 VR 头显的消费者版都亮相了，普通人该怎么选？
Oculus官方回应：Facebook“卖掉”用户数据给广告商?
我就是颜值高——Gear VR开箱评测
VR性爱套装为"五"妹妹升级换代
Oculus公司首席科学家暗示虚拟现实的下一步是?
20亿美金收购这位90后创办的公司，如今扎克伯格根本Hold不住
创业公司如何击败Facebook和Oculus？
脸书COO：VR并不意味着面对面交流的终结
90后创业者不靠谱？美国人给了个打脸的反例
90后创业者不靠谱？美国人给了个打脸的反例
你不是一个人在战斗，Oculus将提供多人体验模式
VR电影：电影“规则”重写，影院或将消失

<返回

<返回首页

Copyright CmsTop.com
2025年12月19日 11:00:44