首页/编程/vrhorizo​​n - 塑造你的空间
编程

vrhorizo​​n - 塑造你的空间

2020-12-11t15:57:20 + 01:00

一个学生项目制作有限空间无限。

使用户能够在仅25平方米的有限VR传感器区域中迄今为止移动不可撤消,而且至少是一个具有挑战性的任务。在我们的学习课程中的最终项目范围内“虚拟现实”在SRH大学海德堡,我们实施了一个虚拟的购物中心模拟器,拥有四层,自动扶梯,电梯,无限的办公室和639平方米的购物区。

在2020年4月,在我们的最后一学期开始,我们获得了在触觉内容和无限探索性的“空白”风格中开发原型的任务,但物理(真实的)空间有限。由于我们对手动跟踪的商业现货Oculus任务的自我限制,我们可以使用仅25平方米的运动面积。

对于我们来说,重要的是虚拟环境不仅看起来无限,而且几乎无限地探索。用户的运动可能跨越多层或三维的事实不是初始要求 - 我们自己添加了它。我们的教授的要求包括至少一个静态触觉元素,即,可以在真实和虚拟空间中找到的元素在同一位置找到。另一种要求是开发一个动态级别发生器。然而,为了充分达到我们的方法的潜力,我们不仅创造了一个完全动态创建的办公室和邻近走廊的一层,而且还设计了三层额外的地板,包括公开可访问的购物区。

我们的原型结合了多种方法,如主动散步,无限的行走,经典水平设计和程序,动态级别的生成以及我们将在下面更详细地讨论的视觉技巧。

第一迭代/原型主动散步。

重定向走路
重定向行走使用各种复杂的算法在VR中的运动量。一旦用户接近运动区域的边缘,算法会操纵所显示的场景并重定向用户:在沿着直线行走的印象下,他在不知不觉中没有行走,但以一定的角度或圆形行走。该算法确保用户以取决于运动区域的大小的角度,确保用户永远不会离开传感器区域。

最初,我们被认为是重定向的步行作为我们原型的主要机器人方法。不幸的是,我们的初步测试揭示了我们发现的严重限制,我们发现我们通过科学论文确认:“重定向的行走工具包:探索大虚拟环境的统一开发平台”指向1,600平方米的所需空间,即40x40m,以减少负数对用户前庭系统的影响到可接受的水平。我们只有5个×5米,我们必须放弃实施重定向走路,不得不找到并结合合适的替代品。

走廊一代。

程序级生成
虚拟环境中的一种形式的导航称为无限散步。我们使用它来允许用户自由地在固定的25m²区域移动,并给出了可用空间更大的印象。我们通过过程动态布局生成方法实现了这一点:基本上,我们通过比真实空间小的虚拟空间导航用户。

要多样化这种形式的导航,我们会生成虚拟房间,在我们的设置中,固定大小为4m²或9m²并可重叠。这些房间在动态放置时,通过流程图和旋转的走廊连接,以适合25m²传感器区域。

主动徒步旅行 - 购物中心。

为了简化计算,5x5M传感器区域被分成1的单元格网格×每次1米。因此,每个场景对象的坐标可以始终在单元坐标阵列中被称为。每个细胞对象都有四个壁,这是物体网格的各个部分。在用户移动期间,这些部件被启用并禁用以作为走廊的墙壁工作,这也可以由于有限的可用现实空间而通过现有的房间构​​建。

我们的房间模型使用了四个预定义出口位置。我们在可用的出口点放置了门,并将不可用的家人隐藏着书架。根据房间放置,每个房间都有两到四个可用的门。每个人在开口时生成新的走廊,这导致相邻房间后面的规则。选择这种方法以使用户能够模拟选择探索并在模拟内提高更多时间。

程序级生成。

我们不得不确保用户在通过新生产的内部导航时,用户不会看到放置房间的重叠部分或通过走廊部分。使用Unity3D的触发系统,房间和走廊部分出现或消失了。
利用网格系统,我们将三个触发器放在房间门前的每个细胞上。挑战是消除所有想象力的案例,其中用户可能会看到可能会阻止它们穿过产生的走廊路径的墙壁或房间部件。起初,我们没有对可能导致所谓的“模拟失败”案件的可能性进行严格的检查测试。然而,在仅仅直观的测试时期,我们得出结论,我们需要结构化测试计划。在后威尔,我们可以并应该从一开始就确定坚实的QA和测试计划…
为了改进我们的QA,我们开发了一个结构化和复杂的测试计划。它包括有关我们级别生成器的当前版本和测试过程的详细信息。此外,它包括开发人员重现已知错误的所有必要信息。我们的新方法对我们的发展周期有几个积极的后果。我们在测试计划中包含有关当前版本的当前版本的详细信息,以便测试当前版本的人可以快速查看已测试的内容。

一个困住我们的一个例子是我们的广泛且有时耗尽的触发测试:在我们的测试会议之一,我们的开发人员发现您只能在一个方向上移动,同时穿过我们的走廊。如果一个人转身并想返回他们的初始房间,触发器仍然会表现得好像该人从他们的初始房间里移动。这导致房间拆除,只是门工作。

我们的开发人员快速部署可能的修复程序,将有关此行为的详细信息写入我们的测试计划以及可能的解决方案可能是什么。通过这些信息,我们的测试仪后来发现你可以重新开始一次,但不是两次,而且通过我们的触发器的一半是不可能的。我们的测试仪将有关此问题的详细信息写入测试计划并将其递回开发人员。此过程导致对我们模拟的这种组成部分的稳健和性能的解决方案。

活跃被动的散步
对无限运动的有希望的方法是移动用户而不是让他走路。我们称之为“主动徒步行走”的区别。在我们的现实生活中,有许多情景,我们被移动,而无需自我迈进;例如,在购物中心,自动扶梯和电梯很常用,直观地使用。

我们的购物商场模拟器专注于主动被动行走的最佳利用,这使得用户能够在比实际可用的传感器区域更大的区域移动。这甚至包括第三维:我们使用电梯和自动扶梯让用户在我们虚拟购物商城的四层之间切换。虽然较低的三层楼层与自动扶梯相连,但是仅通过底层电梯到达的四楼。这是一个设计决策,旨在增加我们原型的现实主义:办公室既不应该可以访问普通客户,也不是可从购物区可见或可访问的。

由于传感器区域严格限制为5 ×然而,5米,我们还需要一种方法,直线向前移动超过5米,而不会离开传感器区域。尽管它们不像商店商店一样典型的自动扶梯和电梯,但我们选择了额外的传送带,这对来自机场的大多数人都知道。他们允许我们在前三层楼层连接相邻的商店:用户仍然静止,而相应的传送带将他移动到下一个房间。

真正的建造游乐场。

从2D切换到3D
在完成最终原型的途中,我们必须克服进一步的障碍并进行许多结构性变化。例如,传送带上的物体的翻译最初没有任何问题,并且似乎是用户的自然运动。然而,用户在这种传送带上的运动转向成为我们最大的问题之一。统一的一个共同特征与我们的用户的头像不起作用,因为它在站在传送带上时将用户放在无法可行的位置。经过几种可能的解决方案失败,我们决定将逻辑改变在传送带后面:而不是移动单个物体或用户的头像,我们决定在用户​​踩到它后在传送带的具体方向上移动整个世界。这像一个魅力一样,看起来像虚拟现实中的用户的自然运动。因此,我们为电梯和自动扶梯使用了相同的逻辑。

最初,我们的原型仅包括二维级别,因为所需的原始任务。它雇用并依赖于传送带,使用户能够被动地覆盖一些距离,即,没有积极行走。让我们的原型闪耀的全部潜力,后来我们决定通过增加进一步的楼层来增强它,创造三维体验。然而,在这一点上几乎不可能将原型分配到任何现实的情景,因为我们需要在现实生活中的传送带,可以在机场上专门发现。

在没有能够使用由于有限的传感器区域而通过重定向行走,我们有两种选择:无论是将自己的方式限制在现实中还采用传送带还是接受传送带作为我们模拟中的必要罪恶。

第三种选项可能已经转向完全不同的场景,如机场,但即使在这种情况下,我们也需要使用传送带,让用户覆盖人们通常覆盖的距离,实际上是脚踏实地的距离超过5米,例如从等待大厅登船到舷梯和飞机。在仅限5的有限区域内×5米,较大的空间不能自由探索,没有一项重定向行走等技术。然而,我们不考虑在这种小型传感器区域进行重定向行走,是一种用户友好的技术。

由于切换到三维重新设计,我们能够将场景分配给我们的原型:购物中心。在那里,我们可以使用自动扶梯作为第三种被动的运输方式。自动扶梯可以用更加现实的运输手段替换至少一些传送带。

因此,购物中心出生,最初只有几家商店可以访问。整个地区起初似乎有限且小。我们的团队面临着创造出幻想的新挑战,即购物商场应该比真正的更大。在头脑风暴和草图之后,商场中的墙壁被商店窗口所取代,它代表了一个无法在其背后可以访问的商店,从而使用户成为在更大的区域中的幻觉。根据这一概念的进一步设计创造了用户在一个大型和自由探索的购物中心的错觉,而不会受到限制。

oculus任务 HMD在开发期间使用。

oculus任务
在规划阶段,我们选择了Oculus Quest,因为它不需要没有控制器,而是使用手动跟踪。因此,我们的购物商场模拟可以以更自然和直观的方式控制。此外,集成触觉组件的目标在触及范围内。用户不会在手中保持令人不安的控制器,但可以触摸他与之互动的元素。此外,没有电缆的自给式耳机的灵活性,但是有内外跟踪的原因对于让用户自由移动是最佳的。

鉴于其相当小的开发人士基础,Oculus文件并不是最全面的,它很早就变得明显。在开发期间,我们必须自己尝试很多,因为互联网上没有任何内容的问题几乎没有帮助。例如,手动跟踪作为实验特征在我们启动项目之前大约一个月,只有在我们的项目已经高涨时完全集成到Oculus平台中。
在该项目中,我们中只有一个拥有Oculus Quest并巧合的有足够的空间作为物理25m²传感器区域。在正常情况下,这个问题不会出现,因为我们将作为我们大学VR / AR实验室的一个小团队合作。我们不仅有许多头戴式展示展示,可以自由使用和借用,也是必要的传感器区域。然而,由于Covid-19大流行,我们必须通过视频会议进行远程工作,无需访问我们的实验室。缺乏用于开发和测试的设备肯定阻碍了我们的项目。

为了克服这些问题,我们捆绑了所有VR和Oculus Quest特定的任务,因此只有一个团队成员必须用Oculus Quest身体发展,而其他团队成员则大多数能够使用模拟输入的界面。这令人惊讶地令人惊讶,大部分项目都可以在统一发动机上并详细测试。最终的Android任务构建揭示了最后一个错误,其中某些逻辑只能在不同位置的无价值耳机中触发,这没有可能流到Oculus任务。

触觉互动
在我们的概念阶段期间,它很快就变得清晰,与按钮的互动将相对容易地实现,因为使用具有平坦表面的按钮将防止发生手动跟踪的最大问题之一:手中的某些部位的隐藏通过双手或其他部位。例如,抓住诸如杯子的物体时,由该物体引起的闭塞,并通过制造拳头抓住它阻碍了整个手的正确跟踪。我们认为,具有平坦表面的简单按钮绝不会在自然相互作用期间干扰手动跟踪。

对于我们的按钮,由于压力强度和按钮的尺寸,我们无法使用预制的灯开关,蜂鸣器或类似按钮类似的溶液。简单地说,我们需要非常大的按钮,可以承受快速的手动运动和大的压力。我们不得不假设用户无法瞄准具有完美的手眼协调的按钮,但宁愿以较少的协调方式按下它们。这就是为什么我们用木材和金属弹簧建造了八个大按钮。在我们的虚拟购物中心中,按钮由跟踪的手的物理量(碰撞者)移位,并在一定压制距离后注册压力。因此,只能用于提供触觉反馈的按钮;它们不会与计算机通信或向Unity发送信号。

作为触觉结构的一部分的柱子具有舒适的高度,用于按下按钮,并且可以被认为并感觉到被动运动方法的框架。由于支柱的不稳定性,按钮安装在柱的顶部,以便在施加横向压力时不得撕掉平台或破坏同步。选择基板系统本身以实现最高可能的模块化,以实现所需的必要变化,使用户能够在没有跳闸风险的情况下挖掘按钮,并且可以尽可能轻松地测量25m²。

为了防止用户移出传感器区域和虚拟空间或触摸他无法物理触摸的虚拟边界,碰撞被拦截了头部和手。这种限制是通过向用户头周围出现的黑匣子来实现,以影响他的愿景。但是,如果他触摸按钮或支柱,则暂停这种黑屏效果。

启动Oculus Quest时,用户通过在地面上绘制一条线并另外调整高度来创建物理传感器区域边界。启动应用程序时,虚拟世界的原点是在耳机的前向和其高度的向前创建。要保持虚拟空间对齐并同步到物理空间,因此虚拟原点必须与真实的空间相同。传感器区域越大,耳机的精确初始旋转越致敏。首先,我们测试了对调整虚拟和物理空间的几种不同变体。不幸的是,它变得不可能在运行时对齐它们,因为我们的团队没有考虑实施一个允许所有其他仿真逻辑(例如电平发生器)的接口。回想起来,这个问题是可预测的,可以避免。另一个教训......

另外,Oculus API没有提供足够的信息来自动化同步过程。 “Oculus App-Reset-View函数”负责根据耳机位置重新调整虚拟世界,该耳机位置最终成为我们对齐和同步虚拟和实际空间的唯一方法。所以我们买了一个耳机支架并在每个模拟开始时将耳机与耳机对齐。

Vrhorizo​​n developerteam。

超出结果
在6月到2020年6月,我们意识到了一个完全无障碍的购物中心,可在自动扶梯和电梯连接的四层楼。在总面积为639平方米,我们不仅内置于触觉元件,而且是一个动态级别发生器,负责相应的办公空间和相邻走廊的无限产生。因此,我们的原型结合了几种方法,例如具有无限的行走和水平生成的主动被动行走,以及手动设计的水平,加上一些光学技巧,如无法到达的购物区,使商场出现更大。

此原型旨在作为随后的其他年级课程的其他学生的示例和模板。我们应用的原则和技术以及它们的组合提供了良好的概述,可以通过目前可用的VR硬件和软件实现的内容。尽管在Oculus系统的典型传感器领域中,HTC Vive或其他市售的VR系统中的典型传感器区域不能使用重定向的技术,但我们已经表明,可以创建和探索巨大,甚至三维的多层环境在5×5米传感器区域。类似的原理和技术的组合可用于创建许多不同类型的虚拟环境,用于娱乐和认真的目的。

在项目的开始,我们有点不知所措,因为我们是一个只有六名学生的团队。我们不知道如何以我们所有的教授和我们自己的要求达成这样的步骤数量。但是,随着项目的进展情况和提前进行了详细研究,我们在各个地区得到了改进。我们能够通过共同努力,将该项目与互相支持的问题一起融合。在整个项目中,我们能够退回我们的学习点,使我们以前的课程的内容,相关的经验和个人进一步发展伴随着我们整个项目。

一个月后,我们终于令人愉悦的是,我们将获得SRH最佳游戏奖,我们的学习课程每年给一个学生项目的学习课程奖。


关于SRH Heidelberg.
2007年,SRH University Heidelberg属于第一所德国大学提供游戏开发学习计划。已经在2010年,虚拟现实成为世界范围内的趋势,私立大学进一步实施了第一项研究计划,重点是欧洲的大众和娱乐媒体。 SRH University Heidelberg是德国最古老的私立校园大学之一,拥有50年的教育和研究传统,以及32个创新的学习课程。超过3,400名学生为他们的职业生涯做好准备。

SRH是一家私营公司,其目标是提高人们的生活质量和机会。 46家公司集团由SRH Holding,这是一家位于海德堡/德国的非营利基础。它是教育和医疗保健服务,经营私立大学,培训中心,学校和医院的领先提供商。 SRH拥有15,059名员工,每年支持超过120万客户和患者,并产生11亿欧元的营业额。


Wilhelm Gerner.
活跃被动步行的开发商 - 购物中心

Wilhelm Gerner.研究“虚拟现实”(B.Sc.)在SRH大学海德堡。他计划在2021年在Haw Hamburg开始在数字现实(M.Sc.)中的硕士计划。


eva晚安
项目经理/项目负责人

Eva Gootnant第一次训练为律师助理,然后决定在SRH University Heidelberg学习“虚拟现实”(B.Sc.),以获得对虚拟现实的深刻技术理解,以便将这两个领域结合起来。


Maksym Hlaholiev.
程序员(级别生成,构建自动化和声音)

Maksym Hlaholiev.是DIY和硬件的爱好者,即将完成他的学业,以“虚拟和增强现实”专业。他是一个注册的C#Unity开发人员,拥有5年的经验,并在专注于机器学习的私人方面项目工作。


MarkusKühner.
VR-Programmer:交互,同步和构建

MarkusKühner研究“虚拟现实”(B.Sc.)在SRH University Heidelberg。他目前正在为他的学士学位编制一个增强现实室内导航系统,通过利用最新技术与Ioxp / PTC合作。 XR是他的激情。


DanielGörlich.
“虚拟现实”(B.SC.)的研究计划

博士教授。 DanielGörlich专注于学习和博士学位期间的未来人机互动。 2011年,他被任命为SRH大学海德堡教授。 (B.SC.)研究计划。


丹尼尔Zappala.
程序员(Unity XR开发人员)

丹尼尔研究“虚拟现实”(B.SC.)在SRH大学海德堡。随着德克萨斯科技大学的共同监督,他目前正在撰写撰写关于球员的人类人物关系的学士学位。完成他的研究后,他计划在机器人行业中追求XR开发商的职业生涯。

关于作者: 11月20日
类别:
去顶级