虚拟装配实验的快速发展方法基于3D游戏引擎外文翻译资料

 2022-11-06 15:22:32

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料


虚拟装配实验的快速发展方法基于3D游戏引擎

介绍

随着游戏产业的发展和计算机辅助教学的普及,教育游戏作为新型教育媒体正在吸引越来越广泛的兴趣。作为教育游戏产品,教育游戏将提高传统教学模式,整合更加生动的教学形式和更丰富的教学内容,实现教育“学习娱乐”的思想。正如潘普森斯基在2001年的著作中所说,“真的21世纪的学习革命就是通过玩耍去学习。“

在国外,教育游戏研究开始得很早。八十年代有学者在美国研究视频游戏的过程中提出“教育游戏”的概念。在教育游戏设计与发展理论,国外学者做了大量的工作,提出了一些开发模式和方法。 K. Kiili的教育理论与经验游戏模型,以及A. Amoryl和R. Seagram设计教育游戏“GAP”的权宜之计更有名。在教育游戏的实践中,最具代表性的是“游戏教学”(GTT)项目,这是麻省理工与微软合作开发的为下一代互动教育娱乐的概念原型。他们已经发展了十几个游戏数学,科学和工程教育的概念框架。在国内,教育游戏研究仍处于探索阶段,其表现如下:教育游戏的基本研究和教育游戏软件的实践。

作为一种有效的教学方法,实验是教学的重要组成部分,对于我们了解事情,巩固我们的学习,提高我们的分析能力,解决问题,培养处理能力,发展创新精神有着重要的意义,组装实验在许多实验形式中占一定百分比,特别是在一些系统结构研究中。

传统的装配实验通常是在物质对象帮助的情况下进行的。在实验之前,我们还需要经验丰富的技术人员进行培训。这个传统的组装确实是直观的,但是我们要花很多时间去训练,担心关于设备的损坏、安全问题等限制因素,如人力,空间,环境和设备。

虚拟装配是基于计算机技术,图形渲染技术,动画技术,多媒体技术,网络技术,虚拟现实技术等。它创建一个基于真实环境的虚拟环境,实际上可能无法实现。虚拟装配将打破设备,时间和地点的限制。方便大规模和长期的组装实验,现在,它是非常重要的教育和虚拟制造的研究课题。

通常,虚拟装配应用程序基于具有许多虚拟现实技术缺点,如开发效率低,现实感差,互动性差,物理模拟支持不足。相比之下,3D游戏引擎是一个更有前景的平台去开发虚拟装配应用,为其提供更多的技术支持用于虚拟装配,如巨大的图形渲染效果,强大的物理引擎和强大的编辑器等。此外,它支持实时渲染和编辑,使开发人员可以随时修改游戏场景。

在本文中,我们提出了一种基于3D游戏引擎开发虚拟装配应用的新技术。 这种应用程序可以显示复杂对象的构图结构,精确生动地展示其装配和拆卸过程。 这种技术充分利用3D游引擎的优势,包含一套方法和可重复使用的软件组件去解决虚拟装配的关键问题,如装配关系的表达,装配动画和相机控制等。基于这种技术,可以快速灵活地开发一个虚拟装配实验。

本文的其余部分组织如下:第2节介绍Unity3D游戏引擎。第3节描述了基于Unity3D的虚拟装配体组件库的设计。第4节介绍关于虚拟装配体组件库的应用的示例。最后在第5节,我们总结了本文并作出了一些结论。

Unity3D游戏引擎简介

这种方法是基于Unity3D游戏引擎实现的。游戏引擎是游戏开发平台,Unity3D是其中一个受欢迎的游戏引擎,也支持虚拟装配的开发实验。 Unity3D的具体功能包括集成编辑器,跨平台版本,地形编辑,着色,脚本,网络,物理,版本控制等功能。

Unity3D游戏引擎中的脚本。在Unity3D游戏引擎中,游戏场景中的所有对象都是GameObject的实例。一个gameObject可以附加许多带有特定属性的组件。附加到gameObject的组件从Component类继承。由程序员编写的脚本是继承自MonoBehavior类,它是一个特殊的子类零件。图1描述了Unity3D游戏引擎GameObject,Component和MonoBehavior在UML语言的关系。

图1 Unity3D游戏引擎中GameObject,Component和MonoBehavior的关系。

Unity3D对虚拟装配的技术支持

虚拟相机。所有的游戏引擎在一定程度上都能为虚拟摄像机提供支持,Unity3D也是。最重要的是,Unity脚本可以在运行时附加到相机或从相机中删除时间,这使我们能够更灵活地控制摄像机。 Unity相机具有各种属性,可以在设计时通过游戏编辑器进行分配,并在运行时通过脚本进行更改。我们可以在合适的位置和角度观察装配件通过相机。 图2展示了在Unity3D游戏编辑器里相机的属性。

图2 Unity3D游戏引擎中摄像机的属性界面。

碰撞检测。碰撞检测是虚拟装配的关键技术。在装配过程中,我们必须确定gameObjects之间的碰撞并快速响应碰撞。否则一个gameObject将通过或跨越另一个,它将不符合客观规律。
在传统的虚拟装配中,我们通常使用算法来解决碰撞检测,如边界方法,空间分割法和图像空间算法。但是在Unity3D中,我们可以直接向gameObject添加碰撞器,而不使用复杂的算法。另外,碰撞器是组件之一。它不仅降低了开发难度,而且缩短了工作时间。
ITween。ITween是一个简单,功能强大且易于使用的动画插件,适用于具有丰富集合的Unity的动画。它是一个单独的C#文件,可以与Unity的任何编程语言一起使用,以及支持所有版本的Unity [8]。
与Unity3D的动画编辑比较,iTween的最大优势是“一步到位”,也就是说,我们可以使用一个简单的函数来完成装配动画。 ITween它是易于使用和节省游戏资源的。

基于Unity3D的虚拟装配组件库的设计

装配控制脚本(ADCS)

装配关系。复杂的对象包括很多部分,它们彼此互相影响。某些部件的组装条件可能决定其他部件是否应该直接组装。在这个系统中,我们提前设计装

配顺序。
一般来说,有两种组装方式。一个是“全部组件 - 部分”,另一个是“全部”。前者的主要思想是将对象分解成几个子组件和零件,并且每个子组件也可以分解成零件。和装配相反的是,后者不再具有子组件,它将处理部件以一个统一的方式。通过对每个部分的准备工作的定义,我们指出装配顺序。准备是零件的一部分,只有每个零件都进行组装或拆卸,相关零件才会被组装或拆卸。在这个系统中,我们使用后者。图4和图5展示了具有树结构的两种装配方法。

图3“全部组件 - 零件”。

图4“整体”。

在图5中,我们标记绿色的叶子部分,是没有前提条件并可以不按顺序直接拆卸的部分。在这个图中,我们以拆装为例:“part1”和“part2”是“part6”的前提,这意味着“part6”只能在“part1”和“part2”全部拆卸之后才能被拆卸。 相反,“第15部分”是“part11”和“part12”在组装过程中的前提,“part15”必须在“part11”和“part12”之前进行组装。

装配 - 拆装动画。一般来说,虚拟装配过程是通过复杂的算法实现的,如可见地图,变换线和配置空间方法。但是在这个系统中,我们使用第三方插件iTween来提前设计动画。我们可以使用iTween的简单功能完成装配动画,并减少开发难度和节省游戏资源。
使用iTween,我们在设计时定义了每个零件的装配和拆卸运动路径,包括原始位置,最终位置和一些关键位置。另外,我们提前设计好每个部分的最开始角度和最终角度。然后iTween会根据关键点计算一个平滑的曲线。当零件组装或拆卸时,它将从原始点到最终点进行平滑的移动或旋转,就像我们设计时候定义的那样。
轨道显示。大多数虚拟装配只能模拟计划组装路径。事实上,玩家不能跟上如果零件移动得太快的话。因此,我们实施跟踪显示来展示零件在装配过程中的路径动作通过Unity3D粒子系统。通过添加跟踪渲染组件到零件,我们可以定义轨迹显示的参数,如Materials,Time,StartWidth,EndWidth和颜色等等。
相机控制脚本(CCS)
虚拟相机在装配过程中起着关键作用[7]。在这个系统中,我们使用鼠标和
键盘控制虚拟摄像头,并定义一组与摄像机对应的输入操作动议。例如,您可以通过将鼠标指针移动到该部分来选择屏幕上的部分然后点击鼠标左键。

在组装过程中,摄像机最重要的是遵循最佳观察点和角度。在运行时,虚拟摄像机的点和角度正对其当前位置目标对象。当选择某些部分时,相机将平滑的从当前位置移动到最佳观察点看着它。当然,你也可以随时改变观察点角度。
另外还有一些辅助组件,如开始菜单,状态转换组件,进度组件和部件属性组件。使用这些组件,我们可以在运行时在装配和拆卸之间来回切换,了解当前的装配 - 拆卸零件的进度和性能。图6描述了该系统结构。

图5虚拟装配体系结构图。

虚拟装配系统快速开发的配置步骤

对于上述组件,开发虚拟组装系统通常包括以下几点:
(1)准备各种辅助点:在游戏场景中添加不同种类的点,比如最佳观察点(PositionPoint),最佳观察点(LookPoint),各个部件的运动路径点(MovePoint),相机的实时观察点(LookTarget)等。
(2)准备部件:将ADCS连接到各部件,并单独配置零件。另外,我们需要将Trail Renderer组件附加到每个部分。
(3)准备虚拟摄像机:将CCS连接到摄像机对象。为方便有效地进行配置,我们将辅助部件附接到相机对象。

在上述过程中,步骤(1)将会花费很多时间,因为有很多点要处理。为了提高配置效率,我们将同样的一点纳入“Prefab”(Unity3D的一种机制),可以简单存储,共享和重用。 我们只需要调整点的位置,在游戏场景添加预制体后,不用手动添加点。
这个虚拟装配组件库的应用
最近,我们开发了一种使用这种“中国飞机”的方法的虚拟装配实验载体瓦里格“。 在本实验中,我们使用摄像机控制组件(CCS)来选择一个部分,从最佳位置观察它(图9)。 然后我们使用assembly-antivembly控制组件(ADCS)来模拟装配过程(图10)。 这个游戏中的所有功能都是基于虚拟装配组件库完成。

图6选择零件。

图7装配动画和轨迹显示。

总结

在教育中,通过组装和拆卸将对象的结构展示给学生是一个熟悉的任务。 本文提出了一种构建虚拟装配实验的新技术。使用这个技术是高效的,因为它是基于3D游戏引擎和所涉及的所有软件脚本制成可重用组件。这种技术也可以使用,因为构建虚拟装配实验的所有必要的过程都有详细的说明。

基于Kinect体感相互作用的虚拟装配系统研究

介绍

虚拟装配技术是一种新的廉价手段去解决产品设计,装配问题培训等。虚拟装配系统(VAS)主要采用虚拟现实,增强现实等技术并结合虚拟和实际现实。在人 - 计算机交互,它需要昂贵的硬件支持包括数据手套,位置跟踪器,同步器,3D头戴式显示器。尽管效率高,有强烈的沉浸感,但是他们是昂贵的,并且大多数为特定目的定制,以及他们的软件平台不是通用的,因此这样的虚拟装配就几乎不被高等院校采用。他们不适用于普及以及实验和实践教育的应用。

基于PC桌面系统的VAS采用WIMP,在窗口,图标,菜单和点击的互动是主要的互动元素,鼠标和键盘都是主要交互式设备。 VAS的优势就是使用价格低廉的WIMP,并且“点击”输入是准确可行,可能实现2D交互中的快捷操作。但是,缺点是操作与3D对象交互时变得复杂用户体验差,使用虚拟现实的想象力和沉浸系统是不可能做到最好的。本文结合Microsoft Kinect进行研究与虚拟现实引擎Unity3D建立基于桌面的廉价的具有较强感觉的虚拟装配实验系统。它收集用户的空间运动信息包括身体运动,手势,声音,面部表达式作为虚拟装配系统的交互式渠道。这将使通过自然习惯行为完成虚拟装配任务变得可能。

目前关于Kinect作为3D虚拟交互的研究设备主要集中在手势识别。手势识的内容由两个方面组成:一方面预处理其中包括手迹追踪,手势分割,功能提取等。另一方面是手势运动轨迹跟踪和分类。参考文献[3]提出了采用3d的方法协调系统获得中心重点深度图像,识别准确率高达90%。参考文献[4]提出了一种从输入的图像中使用3D的 MS Kinect的指尖检测和对于双手的手掌中心检测方法。

目前,许多基于Kinect体感相互作用的应用已经开发出来了,例如,基于Kinect的手势识别系统教育,在空中系统手写,轮椅手势控制系统。但是Kinect在VAS的应用研究很少。参考文献[5]提出了应用Kinect用于工业环境中的组装操作通过使用3d运动捕捉,但不涉及实现细节手势识别。参考文献[6] 通过Virtools和Kinect研究VAS使用手势交互得到了很好的结果,但只有手势被用于人机交互,身体运动尚未得到讨论。

虚拟装配场景和逻辑任务管理通过Unity3D引擎实现。Unity3D是流行的虚拟现实生产引擎,具有强大编辑功能,物理系统和渲染能力,完美支持3Ds max,Maya,XSI等。另外,Unity3D完美支持有限状态机(FSM)编程并且可以很容易地管理虚拟装配状态逻辑关系。

建立装配模型数据,手势识别和改变虚拟装配场景视图身体运动是发展体感互动虚拟装配系统地三个关键问题。“树状层次建模”,“手势语义扩展”和“多维头追踪”方法在如下讨论。

建立装配数据模型

在虚拟装配过程中,每个部分移除或安装都必须遵循一定的顺序和空间路径。根据互动,整个虚拟装配环境由移动物体和调整物体组成。移动物体主要包括虚拟装配目标,3D菜单和装配工具。该虚拟装配目标相当复杂,可以进一步分为三类。

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[139291],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。