首页 > 代码库 > oculus rift最佳用户体验(个人翻译)
oculus rift最佳用户体验(个人翻译)
本指南的目的是帮助开发人员改善虚拟现实内容,包括:
- 眼部舒适感:避免眼球负担。
- 身体舒适感:防止迷失方向感和恶心。
- 积极的使用者体验:提供有趣的、身临其境的和新引人的交互。
- 最轻的虚拟现实后遗症:避免在使用后对视觉、运动功能的影响。
注意:同其他媒体设备一样,不建议开发人员,使用者及设备长期不间断使用。
最佳体验的总结
表现
l 使用Oculus VR失真矫正着色器。你的失真解决方案可能与之相似,甚至看起来是对的,它也很有可能使你的使用者感到不适。(使用自带的预制模型)
l 使用完全正确的投影矩阵和默认的oculus头部模型。任何伴随着真实世界头部运动的光学流动产生的偏差都会产生视觉与身体的不适。(使用正确的投影方式和自带的预制模型)
l 始终保持虚拟现实的浸入感。不要在使用者面前贴一张图像(例如一个不响应头部动作的全屏幕的闪屏),这会使使用者迷茫。(测试Test1.exe,图片贴在镜头上跟着头部转动总是不好的,所以官方根的预制模型禁用了Unity的OnGUI)
l 使用超级采样或是反锯齿来改善低分辨率,低分辨率会使每个眼睛屏幕中心的效果变差。
(使用一些先进渲染技术改善你分辨率低带来的锯齿等问题,改善画面质量)
降低延迟
l 你的代码应该运行在无缓冲的垂直同步的且等于或高于rift的现实刷新频率。在虚拟的世界中延迟和掉帧产生颤抖会使人感到不安。(运行游戏时帧率在没有垂直同步时应该应该等于或高于or眼镜的现实刷新频率,DK1为60Hz,DK2为75Hz)
l 关于垂直同步,垂直同步是用于解决画面撕裂的技术,画面撕裂是由于游戏帧率过高,与显示器刷新率不同步引起的,但是使用垂直同步会带来延迟。每帧垂直同步延迟大概13ms,每两帧垂直同步延迟27ms。
l 在理想情况下,使延迟达到20毫秒或低于motion-to-photon的延迟(可使用rift内建的检测器函数测量得到),改善你的代码来减小传感器到渲染的时间。(尽量减小延迟)
l 游戏循环延迟不是一个常量,它随着时间而改变。SDK使用了一些策略防止使用者受到延迟的影响。尽可能的减小延迟产生的体验变化。(尽量减小延迟的变化性,保持延迟的稳定向,例如保持固定帧率,如使用垂直同步)
l 使用SDK的预测跟踪,确保函数调用一个精确的时间参数。对于不同的应用程序延迟预测跟踪值也不同,所以对于每个应用程序都要调整。(将预测函数的参数调整为运行时的延迟数,否则会出现画面抖动)
l 查阅OculusRoomTiny的源代码作为最小化延迟例子并应用适当的渲染技术在您的代码中。(由于没有相关渲染技术开发的知识,所以看不懂OculusRoomTiny的源代码)
l 由于画面抖动,画面撕裂,延迟,帧率,预测函数等问题之间互相制约,需要具体游戏具体调试,不可能用简单场景测试得到准确数值。
优化
l 减少eye-render缓冲分辨率来减少视频内存,提高帧速率。(就是可以通过改变游戏内虚拟摄像机分辨率来改善游戏帧率,对于Unity找到的可能的修改方式是OVRCameraController.sc里的ScaleRender的参数)
l 虽然降低显示分辨率看起来像是一个提高性能的好方法,由此产生的效果主要来自eye-render缓冲分辨率的影响。降低eye-render缓冲分辨率,同时保持显示分辨率可以提高性能而不对视觉质量的产生影响。(直接改变游戏本身的分辨率并不是一个有效改变游戏效率的手段,而且会导致不能与ORDK2的显示分辨率一一对应)
头部追踪与视角
l 避免扰乱使用者视觉的稳定性,旋转、移动地平线或是巨大的物体会使使用者感受到与真实环境发生冲突而感到不适。(Test3.exe这里指非常巨大的物体,我做测试的物体时变长1公里的正方体,由于过于巨大使用者会同时以地面和正方体作为参考系观察物体运动,如果巨大的正方体在移动或旋转,会产生混乱导致不适)
l 总是响应使用者的所有动作,没有例外。即使在调出菜单,游戏暂停,或在场景中,使用者应该能够向四周观看。(不要禁用头部视角追踪功能)
l 使用SDK的位置跟踪和默认头部模型,以确保虚拟摄像机旋转和移动的方式符合的头和身体动作,如果出现差异会感觉到不适。(使用自带的预制模型)
位置跟踪(DK2新增功能,与附带的摄像头相关,注意为了避免理解失误,外设的摄像头统称摄像头,游戏中的虚拟摄像机统称摄像机,虽然他们都翻译为camera)
l 渲染后的图像必须直接对应使用者在现实中的运动,不要手动增加摄像机的动作。对整个头部模型要使用唯一的全局标度尺(例如从英尺切换到米,或是拉伸或缩小玩家),但不要改变头部运动比例而不改变瞳孔间距。(不要手动修改自带的预制模型上的脚本和模型的尺寸,永远使用统一的比例尺,3Dmax创建模型要完全使用真是1:1比例,并按照一定的步骤重置模型的比例尺和坐标轴,保持模型在Unity中使用统一的比例尺缩放)。
l 由于位置追踪的加入,使用者可以获得更多的视野,甚至可以看到一些你不希望他们看到的地方,例如物体下面,边缘外侧或是角落附近。可以考虑使用裁削和背面渲染等方法。(使用宽于物体的碰撞体,或者使用低矮的物体阻碍玩家看到这些地方)
l 在某些情况下,使用者可以使用位置追踪穿过一些虚拟环境(如夹缝或是把他们的头通过墙壁或内部对象)。我们的观察是, 当他们意识到将他们的头通过物体是可能的时候,使用者倾向于避免这种情况的发生,除非他们意识到这是游戏设计者在利用了这一点设计游戏内容。无论如何,开发人员应该设计如何处理穿越几何物体的摄像头。这个问题的解决方法之一是告诉他们已经离开了摄像头捕捉范围(尽管在技术上他们并没有离开,这是一种“欺骗”玩家的方法)。(设计游戏内容时,可以加入这种机制)
l 当使用者离开摄像头捕捉范围的边缘时,向使用者发出警告(就好提前)以至于重新定位摄像头,防止丢失位置的追踪。(自带的预制模型有这个功能)
l 当玩家离开摄像头捕捉范围时,我们建议不要在rift留下虚拟现实的场景,这样会使位置追踪失效。处理位置追踪丢失前的场景,如:消失在黑暗中或是画面衰弱(对比度或亮度下降)会大大减少使用者不适。一定要提供使用者反馈表明发生了什么以及如何修正它。(自带的预制模型有这个功能)
l 当位置追踪失效时,尽量不要启动或禁用位置跟踪的功能,这会令使用者非常不适的,并且将屏幕变暗或者至少确保SDK头部模型的视角追踪正常工作。(始终保持位置追踪是启动的)
加速度
l 加速度会导致你的视觉,前庭和身体感觉产生错觉。减少这种冲突的持续时间和频率。加速度尽可能的短(最好是瞬时)且尽可能的减少次数。(除非不动,加速度是难以避免的)
l 记住“加速度”并不仅仅意味着加速前进;它指的是任何使用者的运动变化。它包括减慢或停止,移动或静止,迈步走和转向。(只有静止,和始终的匀速前进的体验是最好的,但是通过增加视觉、听觉等线索可以改善加速带来的不适)
l 尽可能的由使用者控制启动加速。颤抖、抖动或摆动摄像机会使玩家感觉不舒服。 (除非提供足够的视觉或听觉线索,否则不要通过程序(而不是玩家操作的)移动摄像机,不要出现像地震这样的情况)
移动速度
l 从静止位置查看环境最舒适的虚拟现实。然而,如果需要在环境中运动时,最舒服的方式是以一个匀速的方式来运动。真实的速度将带来更长的时间舒适感,作为参考人类走在平均的速度是1.4米/秒。(在游戏里根据玩家体验,移动速度应该是可调节的,1.4米每秒可以作为默认设置,应该提供跑动的方式可以将3米每秒作为默认设置,在空旷的地方跑动,比在狭窄的地方跑动感受好多了)。
l 瞬间移动在一些情况下比步行移动体验更好,但他会带来不适。如果使用瞬移,尽可能的提供视觉线索可以使使用者能够维持他们的方位,保持原有的方向。(瞬移之前要为使用者提供足够的线索判断到瞬移将要发生,例如屏幕的淡入淡出)。
l 向一个方向的运动而向另一个方向看会使人感觉不适。减少使用者在移动时向四周看的机会,特别是当移动的速度比1.4米/秒快时。(可以通过使用遮挡物遮挡部分实现的方法,控制玩家的视野)
l 避免垂直线性的振荡,在0.2赫兹就会令人感到非常不适。不沿垂直方向震动,在0.3赫兹就会令人感到非常不适。(五秒一下的频率振动,用户就会感到不适,类似于晕船的原理)
摄像机
l 放大或缩小摄像机可能导致或加剧模拟器综合症,特别是如果他们的头部与摄像机的没有一一对应的协调运动。我们建议不要使用“缩放”的功能,直到进一步的研究和发展找到一个舒适的友好的实现方法。(不要对摄像机使用缩放功能)
l 对于第三人称摄像机,注意摄像机加速移动的方式要无视角色的动作。此外,使用者必须可以自由观看周围环境,这样可以添加新需求的设计内容。(虽然摄像机要跟随角色,但是摄像机的移动要独立于角色的移动,对于OR眼镜,第三人称的代入感远不如第一人称)
l 尽可能避免使用欧拉角,使用四元数是可取的。试着向上看向下看测试你的相机,它应该是稳定且符合你头部的方向。(四元数角度可以减少旋转角的计算量,提高游戏性能,但是四元数角度表示角度不够直观)
l 不要使用“摆头”的摄像机效果,这样会创造一系列的加速度虽然轻微但会令人不舒服。(禁止使用需要摆头的游戏内容和操作方式)
模拟器综合症的管理和测试
l 我们对一般的使用者测试我们的内容确保对于大多数使用者感到舒适。开发者是最糟糕的测试对象。反复的接触和使用Rift使得开发者对模拟综合症的感觉轻于一般使用者。(尽量让玩家作为测试者,例如提供游戏试玩并提供可以接受用户反馈的网页)。
l 使用者的反应和抗病性各不相同,并且头戴式设备带来的是觉得晕眩感要高于电脑或电视屏幕。使用者不能忍受强烈刺激的体验,他们也不希望如此。(过于的强烈的体验适合于制作演示Demo吸引眼球,但是不能作为普通游戏内容(例如,过山车,蹦极,过于真实的血腥、暴力场面等),可能会对使用者身心造成危害)
l 考虑允许使用者调整视觉体验的强度的实现的机制。调整的内容有可能是特定内容,也有可能是运动的速度,加速度或是视野角度。这些设置应该默认为最低轻度的设置。(就是对移动速度,操作方式,加速度的表现形式,视野角度提供可以设置的选项,并将最为舒适的数值作为默认数值(例如将不影响游戏进程的最慢的移动速度作为默认设置),名提供一种“最舒适模式”供玩家选择)
l 为使用者提供模拟器综合症相关的可以调控的设置,使用者可能想要改变一些设置(例如针对习惯于rift的使用者和对rift产生疲劳的使用者的不同设置)。只要有可能,允许使用者在没有重新启动游戏的情况下更改这些设置。(能够随时更改这些设置)。
l 一个独立的与玩家的真实的惯性参考系锁定的视觉背景(如天空盒,不朝响应控制器输入但可以扫描头部动作)可以减少视觉与前庭系统的冲突,增加舒适感(有关详细信息,请参阅附录G)。(地面就是这样的参考系,为了不是玩家在看不见地面时找不到参考系,所以可以为场景添加不会动的天空盒或者巨大的场景物体作为参考系)
l 高精度图像(如,细条纹,或精致的纹理)可以增强在虚拟环境中对运动的感知,这会导致不适感。使用或提供的选项在环境中使用单调颜色的纹理 (如而不带花纹理的纯色贴图)可以为敏感的使用者提供一个更加舒适的体验。(可以将贴图精细度作为改善用户舒适度的设置之一)
立体感的程度(3d感觉)
l 在使用个性化现实设定或是正确的缩放世界时,使用SDK提供的middle-to-eye距离向量。(尽量不要使用缩放功能,不管是物体,摄像机还是贴图,保持同一一直不变的比例尺,如果一定要缩放,要使用整体缩放)
l 请注意, 近距离时对立体中深度的感觉是敏感,这种感觉随着距离的增大而快速减小。有时,距离几英里远的两座山与桌前的距离几英尺的两只钢笔的感受是一样的。(不要让使用者有任何机会过于近的接近场景中的物体或UI)
l 尽管增加虚拟摄像机之间的距离可以从视觉方面增强深度的感觉,但是要小心它的副作用。首先, 如果在物体远离摄像机时没有相对摄像机移动,这会迫使使用者多次频繁的对眼,这可能导致眼疲劳。其次,如果你没有按照瞳孔间的距离等比例的放大头部动作,你会感觉到异常和不适。(不要改变自带的预制模型中关于这方面的参数)
使用者接口
l UI应该是虚拟现实的一部分,即使UI只是简单的绘制在一个漂浮在多边形、胶囊状体或是球状体上。(将UI固定在场景中,而不是摄像机上)
l 不要让使用者在OR眼镜中旋转眼睛观察UI。理想情况下,您的UI应该在使用者的观看区域的中间1/3处。另外,使用者可以通过头部动作来监视寻找UI。(不能将UI固定在摄像机上,要提供线索是玩家轻易地就能使用UI,例如跟随视角的游标)
l 谨慎使用那些移动或缩放头部运动的UI元素(例如,需要移动头部才能看完的长长的菜单)。确保UI准确地响应使用者的动作并且简单易读不会分散注意力或感觉不适。(使用简洁,尺寸适当的UI界面,并且在使用可操作UI时,禁用角色移动,推荐距离是2.5米)
l 努力将界面元素直观身临其境的3 d世界结合。例如,弹药数可以会显示在使用者的武器上而不是在一个悬浮的UI上。
l 绘制游标,准星时要与瞄准的物体在同一深度。当游标不再一个平面上时应有两个图像,否则会使使用者对眼。(并且让游标只出现在可操作的UI元素上)。
控制替身
l 使用者不能在穿戴rift时看见输入设备。允许使用熟悉的控制器作为默认的输入设备。如果键盘是必要设备,那么使用者一定会通过触觉寻找键盘。(将键盘鼠标作为默认设备,手柄作为推荐设备)
l 可以考虑使用头部动作或是环境因素来改变方向。(例如使用自带的预制模型的方法玩家始终向着头部面向的方向前进)
声音
l 当设计音频是,要注意当使用耳麦而不是扬声器时,注意输出设备跟随头部移动的。允许使用者在游戏中选择音频输出设备,并且确保声音在游戏中听起来在输出设备相对于头部的正确的位置上响起。(尽量要求使用者使用耳机耳麦最为声音输入设备,声音可以带来很强的侵入感,降低不适感)
l 对于npc发出的声音使用一个中央声道代替左右声道是可行的,但是这破坏了沉浸感。间断的声音或是嘈杂的声音可以增强使用者的体验。(使用3d音源,让虚拟世界的声音更接近于于真实世界)
l 注意声音的位置追踪,到使用者朝向声源时声音要变大,即使替身并没有朝向声源。(模拟耳朵的功能,正向声音大,背向声音小)
游戏内容
l 距离的相关建议,现实中的一米相当于Unity里的一个单位。(统一一致的标度尺很重要)
l Rift观看物体的最佳距离是0.75米到3.5米。尽管你周围的环境覆盖了全部距离,但是尽量将使用者关注的东西维持在0.75-3.5的距离内。(最佳距离是2.5米)
l 如果眼睛观看物体的距离低于0.75,眼睛会聚焦在一起,使得清晰的贴图变模糊,并且感到眼晕。(不要让物体里摄像机过近)
l 过亮的图像,特别是周围场景,会使敏感的使用者感觉到闪烁,所以尽可能的使用较暗的图像防止不适。(尤其是在晴天这样的场景中,昏暗的场景可以增加代入感)
l 虚拟替身代表使用者在虚拟现实的身体既有优点也有缺点。一方面,它可以增加侵入感帮助使用者增强在虚拟现实的经验,而不是使用空无的身体。另一方面,真是身体与虚拟身体之间的差异会给使用者带来不适感(例如你坐在椅子上,但你的替身却在行走)。在设计你的内容里要考虑这些因素。
l 关于使用虚拟替身,虚拟替身是增加代入感的有效手段,但是加入的替身应该尽量保证身体方位和姿势与现实中的一致。对于需要经常移动的游戏最好是不使用替身。坐着使用站立替身的问题在于,身体感受带来的不适感和角色位移带来的晕眩感。我想到的最佳的替身使用和移动方式是使用一个浮空的移动椅子辅助替身移动,并在移动时提供足够的视觉线索和听觉线索告诉玩家椅子在移动。另一种方式是站立玩,使用站立的模型,模型的高度可根据玩家提供的高度调节,并且在游戏内尽量保持不动(除非对玩家的动作进行相应)。
l 要考虑你的贴图尺寸和质地,防止贴图混乱的问题(例如防止过薄的贴图)。(减少场景中过薄过细的物体)
l 避免意想不到的垂直加速度,例如由于地形起伏引起的,这会导致不适感。考虑将这种地形平整化。(楼梯做成斜坡,不要过高,并提供玩家上升下降的视觉或听觉线索)
l 要注意rift会带给使用者史无前例的侵入感。不同于其他的媒体设备,恐怖的惊悚的内容会对敏感的使用者带来深远的影响。确保在这些内容前警告使用者是否使用这些内容。(在游戏中充分的提示很重要,不要让使用者感受到无助和迷茫)
l 不要完全依赖立体3d效果提供纵深感。照明、纹理、视差(当使用者移动的对象间出现彼此位置变化),和其他视觉功能同样可以给使用者带来空间纵深感。这些深度因素同样应该被考虑到。(尽量考虑所有影响远近感的因素,它们包括:物体正确的摆放位置、curvilinear perspective(线条透视):延伸到远处的直线,relative scale(相对规模):物体近大远小,occlusion(遮挡):近的物体遮挡远的物体。aerial perspective(气体影响):远的物体由于空气折射的原因变得模糊。texture gradients(贴图的梯度):远处重复的图案会变得密集。Lighting(光照):高光和阴影可以帮助我们预测物体的位置和形状)
l 在设计场景和交互时,尽量少的使用横扫,后退,和旋转,这些都会带来不适感。(如果提供这些内容,难么让这些动作的速度更慢些)
l 当使用者正在寻找并注视一个点时,他们最经常的动作是转动他们的头或身体超过15-20度去寻找。避免迫使使用者做出过大的动作,防止肌肉疲劳和不适感。(尽量提供足够的线索去帮助使用者找东西,而不是让使用者盲目的找)
l 别忘了,使用者可能会在任何时候看向任何方向。避免使用者看到任何破坏他们侵入感的东西(例如渲染环境带来的一些技术问题)。(例如贴图错误,渲染错误导致的问题)
健康和安全
l 请仔细阅读健康和安全警告(附录L),以确保开发者和使用者的健康与安全。
l 避免使用任何高对比度的闪烁、1-30赫兹的交替的颜色变化。这可能引发光敏性癫痫患者癫痫发作。
l 避免高对比度,高空间频率的光栅(例如,黑白条纹),这些也可以引发癫痫发作。
补充
l 尽量不用法线贴图,但可以多利用时差贴图。(法线贴图和视差贴图都可以带来凹凸感,但是发现贴图的凹凸感不够真实会导致不适,时差贴图比发现贴图更先进,凹凸感更接近于真实)
l 物体的多边形较少(并使用了凹凸渲染或是光滑平面)会使3d立体感更明显,尤其在近距离时。
l 仅对烟、雾或者远处背景物体使用公告牌(billboards)技术。(其实就是粒子系统)
l 关于粒子系统,使用粒子系统可以使环境感更真实,增加体验感,所以在不影响帧率的情况下使用粒子系统;使用粒子系统时,小颗粒比大颗粒的感受好一些;不要给使用者机会在近距离盯着某一个颗粒看的机会;不要让使用者穿过密集的粒子系统;不要使用过于明亮的或是高频闪烁的粒子系统;为粒子系统添加灯光时,灯光尽量柔和一些。
l 关于碰撞体,为了避免使用者过于接近某个阻挡视线的物体,物体碰撞体的体积要比物体本身宽一些;距离在0.5米时,使用者就很难通过身体摆动穿过物体;由于最佳的视觉感官距离是0.75米至3米,所以碰撞体的宽度要多余物体宽度0.75米;
l 关于雾,三种雾:linear exp exp2Lin的雾雾效果界限分明;Exp是指数雾,效果更柔和;Exp2比Exp更柔和;保持雾的颜色与天空盒的颜色一致;
l 关于UI。UI不要太高(抬头很容易累),UI离摄像机最佳的距离为2.5米,UI的元素的距离不要太远,不要让摆头幅度超过15-20度
更深一步的了解的附件
附件A – 最佳体验的介绍
附件B – 双眼显示,立体成像,深度线索
基础知识
单眼深度线索
Rift内部舒适的观看距离
内部虚拟摄像机间的距离
两个图像融合的潜在问题
附件C – 视野与缩放(0.4SDK)
附件D – 渲染技术
显示分辨率
了解和避免闪烁
渲染分辨率
动态渲染广告牌
发现贴图对视差贴图
附件E – 运动
运动的速度和加速度
程度的控制
头的摆动
正向和侧向运动
附录F – 跟踪
方向追踪
位置追踪
延迟
附录G – 模拟器综合症
综述
导致模拟器综合症的因素
运动的速度和加速度
持续时间
高度
双眼显示
视野
延迟
失真矫正
闪烁
体验
模拟器综合症的对策
玩家背景锁定(又称独立视觉背景)
新方法
测量和测试
附录H – 使用者界面
平视显示器
替身
武器和工具
附录I – 使用者输入与导航
鼠标,键盘和控制器
可选的输入方法
导航
附录J – 创建游戏内容
剧情的需要
美术资源
音频设计
使用者和环境的缩放
附录I – 结语
附录L – 健康和安全警告
关于附录B
l 大脑是通过两个眼睛看到的图形的差异产生距离感的。
l 不要忽略单个眼睛的深度线索,例如贴图或灯光。(尽量不使用会产生深度视觉误差的灯光或贴图)
l 最舒适的观看距离是摄像机前0.75米到3.5米的距离(Unity中1米对应一个单位)
l 可以通过设置工具根据瞳孔距离修改虚拟摄像机间的距离
l 确保每只眼睛对应的图像正确的融合,图像只出现在一只眼睛中,或是两眼间的图像出现差异是不好的现象。
l inter-pupillary distance (IPD)瞳孔间距,一般范围是52-78mm,平均是63.5(可设置为默认参数),等于虚拟现实里的摄像机间距。
l 影响深度的线索:单眼视觉线索(包括灯光和贴图)
l 其他影响深度的线索(括号内为参考翻译):curvilinear perspective(线条透视):延伸到远处的直线,relative scale(相对规模):物体近大远小,occlusion(遮挡):近的物体遮挡远的物体。aerial perspective(气体影响):远的物体由于空气折射的原因变得模糊。texture gradients(贴图的梯度):重复的图案会变得密集。Lighting(光照):高光和阴影可以帮助我们预测物体的位置和形状)。
l 2.5米是最佳实践距离(例如UI设置在这个距离)。
l 长时间盯着一个较近的物体会导致晕眩,尽量避免玩家这么做。
l 尽量避免改变摄像机的间距。
关于附录C
l 尽量不使用镜头拉近缩远
关于附录D
l 尽量不用法线贴图,但可以多利用时差贴图。
关于附录E
l 最佳的体验是去了可以移动头和身体向四处看而没有其他动作的体验。
l 如果必须移动,那么慢速匀速移动是最佳的体验。
l 确保出现的任何加速度都是尽可能短暂的且不频繁的。
l 头部和摄像机的移动必须始终一致
l 不要在第一人称时使用摇摆头部
l 尽量减少后退和侧移可以提供更好的使用者体验
l 注意,由于大步走或爬楼梯带来的视觉上的强烈变化。
l 尽量有玩家控制自己的移动,而不是迫使他们移动。
l 提供一些替身向玩家显示即将做的一些动作可以减少晕眩感。
l 尽量不使用楼梯,电梯。尽量使用斜坡或是短的楼梯。
l 控制操作越简单,带来的晕眩感越少。
关于附件F
l Rift的传感器收集使用者倾斜,摇摆和偏移。
l Rift提供6个景深位置追踪器:
¡ 允许并引导用户调节一个舒适位置,作为基准位置。
¡ 不要禁止或修改位置追踪的功能,尤其是当使用者在现实中移动的时候。
¡ 当使用者即将离开摄像头追踪的位置时,向他们发出警告。在位置追踪失效前将画面淡入为黑屏。
¡ 用户可以利用位置追踪,将虚拟摄像机放置在任何位置处;确保使用者不能够穿越环境或是找到一些技术漏洞。
l 当位置追踪功能失效时,确保“头部模型”的代码正常使用。
l 优化整个引擎的渲染管道,确保降低延迟。
l 取保预测位置的代码正常使用,这样可以大大减少延迟。
l 延迟在所难免时,保证稳定的延迟比持续变化的延迟要好些。
l 我们推荐延迟小于20ms,如果超过60ms使用者会感到非常不适,设置引发模拟器综合症。
关于附件G
l “模拟器综合症”是指由于模拟环境导致不适症状。
l 最主要的是虚拟中的场景与现实中身体感官带来的冲突。
l 有许多导致模拟器综合症的原因,以下列出一些原因,但不仅仅是这几条:
¡ 加速度:尽可能的小幅度的和低频率的加速度
¡ 控制:不要剥夺使用者控制的权利。
¡ 模拟器使用的时间:鼓励用户多休息。
¡ 高度:避免因为高度太低导致的的地面充满视野。
¡ 两眼的差异:一些立体图像会导致不适感(例如虚拟世界里一副画着立方体透视图的画)
¡ 视野:减少视野中虚拟环境可以减少不适感。
¡ 延迟:减小延迟,延迟和缺帧都会导致不适感。
¡ 失真校正:着色器使用眼睛VR的矫正失真渲染。
¡ 闪烁:避免使用闪烁的图像或是密集的重复贴图(例如密集的黑白条纹贴图)
¡ 经验:对于rift游戏感受的经验可以有效的抵抗不适的感觉。
l 以使用者的惯性参考系来锁定背景可以有效的减少综合症的症状。
l 目前还有许多可以探索的方法时虚拟现实感觉更舒适。
l 可以使用模拟器综合症调查问卷(SSQ)作为一种如何收集你的舒适体验的数据的方法。
l 以固定的远景(例如天空盒)作为参照物可以减少不适感。
关于附件H
l 平视显示器(HUD):
¡ 在环境中放弃HUD和其他的集成的信息是理想的
¡ 绘制一个在物体上的准星比一个固定深度的准星要好
¡ 过于近的枪械或工具会导致眼晕,取保他们是替身的一部分,并且当它们没有被使用时,不会出现在视野里。
l 替身的使用有好处也有坏处,好处是它能够告诉玩家在虚拟世界的状况。坏处是当替身和你真实世界的身体动作出现差异时会感到不适。
关于附录I
l 对于Rift任何传统的输入方式都不理想,目前最合适的输入设备是手柄,适合于rift的创新的输入方式有待探索。
l 因为使用者不能看到输入设备,所以尽量让是使用者使用他们熟悉的输入设备。
l 可以利用rift的传感器来进行输入(例如转动头部来瞄准),但是要小心头部动作与虚拟中的动作间的差异导致的不适感。
l 运动在虚拟现实里总是带来新的问题。
l 可以考虑为使用者提供一种“坦克模式”的运动方案。同时要包括一个矫正头部凝视方向的方案。
关于附录J
l 注意在任何时候能够让使用者看向任何方向,这样做才不会打断侵入感。
l 防止由于资源过于精细导致的像素点密集超过分辨率。
l 物体的多边形较少(并使用了凹凸渲染或是光滑平面)会使3d立体感更明显,尤其在近距离时。
l 声音对于浸入感是至关重要。开发者需要精心设计声音,并且要考虑用户可能使用的所有音频输出设备。
l Oculus使用的单位是米:在Unity里一个单位是一米
l 根据用户的尺寸使用Oculus的设置工具进行调整可以得到更理想的体验。
l 尽量避免出现,小的,薄的,不清晰的物体出现。
l 仅对烟、雾或者远处背景物体使用公告牌(billboards)技术。
oculus rift最佳用户体验(个人翻译)