CN108319369B - 驾驶交互方法、装置、存储介质及处理器 - Google Patents
驾驶交互方法、装置、存储介质及处理器 Download PDFInfo
- Publication number
- CN108319369B CN108319369B CN201810103126.XA CN201810103126A CN108319369B CN 108319369 B CN108319369 B CN 108319369B CN 201810103126 A CN201810103126 A CN 201810103126A CN 108319369 B CN108319369 B CN 108319369B
- Authority
- CN
- China
- Prior art keywords
- steering wheel
- angle
- hand controller
- virtual steering
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种驾驶交互方法、装置、存储介质及处理器。该方法包括:在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,虚拟方向盘用于控制载具的行驶方向;根据第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向。本发明解决了相关技术中所提供的VR下的载具驾驶交互方式的可操作性较差,影响游戏玩家的游戏体验的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种驾驶交互方法、装置、存储介质及处理器。
背景技术
目前,相关技术中所提供的游戏内载具驾驶交互方式难以控制。例如:在虚拟现实(VR)场景不依赖于特殊外部设备的情况下,游戏玩家缺乏可实际操控的方向盘。因此,游戏玩家难以感受到现实操作中方向盘带给游戏玩家的力反馈,其可以包括:正常转动时方向盘的触感、与车速相关的沉重感以及方向盘打满(即方向盘向左或者向右转动到极限位置)之后的约束感,容易出现方向盘脱手或者不跟手(即方向盘的转动难以贴合游戏玩家的实际操作,不符合游戏玩家的心理预期)的情况,从而造成游戏操作缺乏准确性,与心理预期不符,影响游戏玩家的游戏体验。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明至少部分实施例提供了一种驾驶交互方法、装置、存储介质及处理器,以至少解决相关技术中所提供的载具驾驶交互方式的可操作性较差,影响游戏玩家的游戏体验的技术问题。
根据本发明其中一实施例,提供了一种驾驶交互方法,包括:
在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,虚拟方向盘用于控制载具的行驶方向;根据第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向。
可选地,在碰撞检测区域内确定第一位置与第二位置包括:对虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒进行碰撞相交检测,其中,左手控制器所在位置与第一位置存在映射关系,右手控制器所在位置与第二位置存在映射关系;确定虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒发生相交,则将第一位置与第二位置调整至与虚拟方向盘相适配的初始位置。
可选地,在确定第一位置与第二位置之前,还包括:在碰撞检测区域提供与第一位置和第二位置关联的指引手势信息,其中,指引手势信息用于引导左手控制器和/或右手控制器向靠近虚拟方向盘的方向移动。
可选地,根据相对位置变化调整转动方向包括:采用第一位置和第二位置计算虚拟方向盘的方向盘预期角度;通过方向盘预期角度进行极值约束处理和插值平滑处理,得到虚拟方向盘的方向盘实际角度;按照方向盘实际角度调整转动方向。
可选地,采用第一位置和第二位置计算方向盘预期角度包括:采用第一位置和第二位置计算投影至虚拟方向盘所在平面的投影方向向量;采用投影方向向量与虚拟方向盘的初始方向向量计算有向夹角;采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差;通过本帧角度差计算方向盘预期角度。
可选地,在根据相对位置变化调整转动方向之后,还包括:采用方向盘实际角度、虚拟方向盘的方向盘最大角度以及载具的转向轮最大角度计算转向轮当前角度;采用转向轮当前角度模拟载具的转向操作。
可选地,在根据相对位置变化调整转动方向之后,还包括:采用载具的当前车速与载具的最大车速计算得到当前车速百分比;对当前车速百分比进行插值平滑处理,调整虚拟方向盘的转动速度。
可选地,在确定第一位置与第二位置之前,还包括:在载具与预设空间之间建立父子层级关系,其中,预设空间包含于载具的容置空间,载具为父子层级关系中的父节点,预设空间为父子层级关系中的子节点,载具的空间变换由预设空间继承;在预设空间与设备集合之间建立父子层级关系,其中,设备集合包括:左手控制器、右手控制器以及头戴式显示器,预设空间为父子层级关系中的父节点,设备集合为父子层级关系中的子节点,预设空间的空间变换由设备集合继承。
根据本发明其中一实施例,还提供了一种驾驶交互装置,包括:
确定模块,用于在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,虚拟方向盘用于控制载具的行驶方向;第一调整模块,用于根据第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向。
可选地,确定模块包括:检测单元,用于对虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒进行碰撞相交检测,其中,左手控制器所在位置与第一位置存在映射关系,右手控制器所在位置与第二位置存在映射关系;确定单元,用于确定虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒发生相交,则将第一位置与第二位置调整至与虚拟方向盘相适配的初始位置。
可选地,上述装置还包括:指引模块,用于在碰撞检测区域提供与第一位置和第二位置关联的指引手势信息,其中,指引手势信息用于引导左手控制器和/或右手控制器向靠近虚拟方向盘的方向移动。
可选地,第一调整模块包括:计算单元,用于采用第一位置和第二位置计算虚拟方向盘的方向盘预期角度;处理单元,用于通过方向盘预期角度进行极值约束处理和插值平滑处理,得到虚拟方向盘的方向盘实际角度;调整单元,用于按照方向盘实际角度调整转动方向。
可选地,计算单元包括:第一计算子单元,用于采用第一位置和第二位置计算投影至虚拟方向盘所在平面的投影方向向量;第二计算子单元,用于采用投影方向向量与虚拟方向盘的初始方向向量计算有向夹角;第三计算子单元,用于采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差;第四计算子单元,用于通过本帧角度差计算方向盘预期角度。
可选地,上述装置还包括:第一计算模块,用于采用方向盘实际角度、虚拟方向盘的方向盘最大角度以及载具的转向轮最大角度计算转向轮当前角度;模拟模块,用于采用转向轮当前角度模拟载具的转向操作。
可选地,上述装置还包括:第二计算模块,用于采用载具的当前车速与载具的最大车速计算得到当前车速百分比;第二调整模块,用于对当前车速百分比进行插值平滑处理,调整虚拟方向盘的转动速度。
可选地,上述装置还包括:建立模块,用于在载具与预设空间之间建立父子层级关系,其中,预设空间包含于载具的容置空间,载具为父子层级关系中的父节点,预设空间为父子层级关系中的子节点,载具的空间变换由预设空间继承;建立模块,还用于在预设空间与设备集合之间建立父子层级关系,其中,设备集合包括:左手控制器、右手控制器以及头戴式显示器,预设空间为父子层级关系中的父节点,设备集合为父子层级关系中的子节点,预设空间的空间变换由设备集合继承。
根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述驾驶交互方法。
根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述驾驶交互方法。
在本发明至少部分实施例中,采用在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置的方式,通过第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向,达到了在VR下通过控制虚拟方向盘实现载具驾驶交互的目的,从而实现了在VR第一人称视角中灵活地控制虚拟方向盘,提升游戏玩家的操作体验的技术效果,进而解决了相关技术中所提供的VR下的载具驾驶交互方式的可操作性较差,影响游戏玩家的游戏体验的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明其中一实施例的驾驶交互方法的流程图;
图2是根据本发明其中一优选实施例的摄像机移动控制示意图;
图3是根据本发明其中一实施例的驾驶交互装置的结构框图;
图4是根据本发明其中一优选实施例的驾驶交互装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明其中一实施例,提供了一种驾驶交互方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明其中一实施例的驾驶交互方法的流程图,如图1所示,该方法包括如下步骤:
步骤S13,在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,虚拟方向盘用于控制载具的行驶方向;
步骤S14,根据第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向。
相关技术中在没有实体方向盘的情况下,存在虚拟方向盘操作不跟手,在速度较快时因为缺少实体方向盘对手的约束和力反馈容易导致方向盘转动过大导致失控、虚拟方向盘不能自动回位以及在虚拟方向盘打满之后容易脱手或不跟手等诸多问题。通过上述步骤,可以采用在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置的方式,通过第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向,达到了在VR下通过控制虚拟方向盘实现载具驾驶交互的目的,从而实现了在VR第一人称视角中灵活地控制虚拟方向盘,提升游戏玩家的操作体验的技术效果,进而解决了相关技术中所提供的VR下的载具驾驶交互方式的可操作性较差,影响游戏玩家的游戏体验的技术问题。
需要说明的是,通过本发明实施例所提供的技术方案,既可以通过游戏玩家佩戴的头戴虚拟显示器与上述左手控制器和右手控制器之间完成信号传递来呈现驾驶交互场景画面;也可以通过传统的显示器(例如:液晶显示器)与上述左手控制器和右手控制器之间完成信号传递来呈现驾驶交互场景画面。换言之,本发明并不对呈现游戏场景画面的显示设备做明确限制,能够通过与上述左手控制器和右手控制器之间完成信号传递来呈现驾驶交互场景画面的显示设备均在本发明的保护范围之内。
可选地,在步骤S13,确定第一位置与第二位置之前,还可以包括以下执行步骤:
步骤S10,在载具与预设空间之间建立父子层级关系,其中,预设空间包含于载具的容置空间,载具为父子层级关系中的父节点,预设空间为父子层级关系中的子节点,载具的空间变换由预设空间继承;
步骤S11,在预设空间与设备集合之间建立父子层级关系,其中,设备集合包括:左手控制器、右手控制器以及头戴式显示器,预设空间为父子层级关系中的父节点,设备集合为父子层级关系中的子节点,预设空间的空间变换由设备集合继承。
上述预设空间是指现实世界中游戏玩家的游玩区域。上述父子层级关系是指三维引擎中的对象嵌套关系。父节点的变换将被继承到其子节点上。
在VR场景下控制摄像机运动的方式与现实生活中直接控制摄像机的方式有所区别。因为VR场景下的摄像机运动实际上通常由游戏玩家的头部来控制。摄像机与头戴式显示器(Head Mounted Display,简称为HMD)相对应,而头戴式显示器通常佩戴在游戏玩家的头部。为了能够使得游戏玩家能够自由控制头戴式显示器进行运动,可以将头戴式显示器和控制器(Controller,通常是指现实世界中游戏玩家手握的输入设备)挂接在一个虚拟的“房间(即上述预设空间)”下。在房间内允许游戏玩家自由控制头戴式显示器进行运动,但房间的运动则由游戏逻辑来完成,那么将由逻辑控制的房间(作为头戴式显示器的父节点)的运动与游戏玩家控制的头戴式显示器运动进行叠加处理,便可实现间接控制镜头运动的效果。
例如:在游戏玩家登上载具(例如:汽车,其他类型载具也同样适用)之后,通过将房间与载具进行绑定,以使房间与载具保持相对静止,便可实现类似游戏玩家在驾驶舱内的操作效果,从而为后续的方向盘控制提供支持。
图2是根据本发明其中一优选实施例的摄像机移动控制示意图,如图2所示,“房间”或“虚拟房间”为头戴式显示器与控制器(其分为左手控制器和右手控制器)的父节点。父节点的变换会继承给所有子节点。因此,通过移动虚拟房间能够起到间接移动头戴式显示器与控制器的作用。在游戏玩家登上载具之后,需要能够被载具所搭载进行自由移动,进而只需将虚拟房间的父节点设置为载具,便可将载具运动继承到虚拟房间上即可。
可选地,在步骤S13中,在碰撞检测区域内确定第一位置与第二位置可以包括以下执行步骤:
步骤S131,对虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒进行碰撞相交检测,其中,左手控制器所在位置与第一位置存在映射关系,右手控制器所在位置与第二位置存在映射关系;
步骤S132,确定虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒发生相交,则将第一位置与第二位置调整至与虚拟方向盘相适配的初始位置。
在VR场景下,为了使得游戏玩家感觉真实,通常会采用一个模型来代表游戏玩家的手部或者手握的控制器。现实场景中控制器的移动将被映射到虚拟场景中,这种映射通常是同步的、一致的。然而,在特定场景下,可以对此种位置映射关系进行特殊处理,从而实现诸如“被吸附”或“被阻挡”等效果。
在控制虚拟方向盘的过程中,一旦现实场景下游戏玩家的控制器逐渐接近虚拟方向盘的位置,游戏中与游戏玩家的手部对应的模型便会像磁铁一样被吸附到虚拟方向盘上的预定抓握点。由此不仅可以避免手部模型与虚拟方向盘模型产生穿插,还可以避免因游戏玩家的手部模型自由运动与方向盘的绕轴旋转运动事实上不完全同步而产生的不稳定抓握感。通过将手部模型放置在虚拟方向盘上,从而提高驾驶交互体验。
鉴于VR场景下的方向盘属于游戏世界中的虚拟物体,如果需要使得游戏玩家能够与方向盘进行交互,那么通常采用碰撞检测的方式来实现。例如:建立一个能够包围上述虚拟方向盘的包围盒,当游戏玩家控制器的包围盒与虚拟方向盘的包围盒发生相交时,即可初步确定手部模型已进入方向盘的操作区域,意图操作方向盘,进而将手部模型调整至抓握虚拟方向盘的起始位置,例如:左手模型与右手模型之间的连线方向为水平方向。
可选地,在步骤S13,确定第一位置与第二位置之前,还可以包括以下执行步骤:
步骤S12,在碰撞检测区域提供与第一位置和第二位置关联的指引手势信息,其中,指引手势信息用于引导左手控制器和/或右手控制器向靠近虚拟方向盘的方向移动。
游戏玩家可根据虚拟方向盘的抓握提示(例如:采用特殊颜色显示的双手示意图)将手部模型放置到方向盘上。鉴于在VR场景下游戏玩家能够观察到的手部本质是相机中渲染的一个模型,因此可以通过改变VR场景下显示模型与游戏玩家的实际手部位置(通过控制器的位置可大致推断得到)的位置映射关系,以使游戏玩家感觉自身在抓握着方向盘。例如:在控制器接近方向盘时,可以让游戏玩家的手部模型像被磁铁吸附,紧紧地绑定在方向盘上,随着方向盘的转动而转动。
通常在游戏中会存在与实际物理控制器位置对应的一个模型,该模型通常表现为物理控制器的形态或者游戏玩家手部的形态。该模型即可以隐藏不显示,也可以刻意地显示在其他位置,用来实现“被吸附”、“被阻挡”等特定效果。
可选地,在步骤S14中,根据相对位置变化调整转动方向可以包括以下执行步骤:
步骤S141,采用第一位置和第二位置计算虚拟方向盘的方向盘预期角度;
步骤S142,通过方向盘预期角度进行极值约束处理和插值平滑处理,得到虚拟方向盘的方向盘实际角度;按照方向盘实际角度调整转动方向。
采用从左手模型→右手模型的方向向量在虚拟方向盘上的投影向量来表达手部操作的角度,并将该角度的变化累加到方向盘的预期角度上,从而实现方向盘的随手转动,进而通过从左手控制器至右手控制器的向量投影到方向盘的向量来表达当前操作方向。当游戏玩家的手部进入/离开方向盘操作区时,更新初始角度为当前方向盘的预期角度。进一步地,上述方向盘实际角度通过对方向盘预期角度进行方向盘极值约束得到,其中,方向盘极值约束用于设定方向盘的左右最大转动角度。在计算得到方向盘实际角度之后,还需要对方向盘实际角度进行插值平滑处理,得到最终所需的方向盘实际角度。
为了不受虚拟方向盘“打满”的影响,而使得方向盘预期角度始终处于累加状态,以确保虚拟方向盘预期角度与手部模型是完全同步的,因此虚拟方向盘在打满前是非常跟手的。而在虚拟方向盘在打满后,由于虚拟方向盘的实际角度受到左右极值的约束,因此在虚拟方向盘的表现上也是正确的。在反向转动虚拟方向盘逐渐回位时,虚拟方向盘预期角度回归至虚拟方向盘极值范围内,进而虚拟方向盘实际角度又将与预期角度重新同步。因此,虚拟方向盘会表现得非常跟手。
另外,在虚拟方向盘打满之后,还可以通过震动手柄提示游戏玩家虚拟方向盘已转到极限。在游戏玩家双手离开虚拟方向盘控制区域时,虚拟方向盘会逐渐回位,以此来模拟真实方向盘的自动回正效果,仍然确保虚拟方向盘跟手。
通过加入虚拟方向盘预期角度,与虚拟方向盘实际角度进行区分,以达到在缺乏足够力反馈(即缺乏方向盘对手的牵制)的情况下,虚拟方向盘的转动仍然符合游戏玩家的预期。
可选地,在步骤S141中,采用第一位置和第二位置计算方向盘预期角度可以包括以下执行步骤:
步骤S1411,采用第一位置和第二位置计算投影至虚拟方向盘所在平面的投影方向向量;
步骤S1412,采用投影方向向量与虚拟方向盘的初始方向向量计算有向夹角;
步骤S1413,采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差;
步骤S1414,通过本帧角度差计算方向盘预期角度。
通过将右手位置与左手位置执行减法运算投影到虚拟方向盘所在平面,得到手部模型投影方向向量。其次,利用手部模型投影方向向量与虚拟方向盘初始方向向量计算得到有向夹角,其中,虚拟方向盘初始方向向量通常选用水平向右方向。然后,采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差,其中,每一帧的类型既可以是图像帧,也可以是物理帧。最终,通过在每一帧的方向盘预期角度的基础上叠加本帧角度差,得到所需的方向盘预期角度。
可选地,在步骤S14,根据相对位置变化调整转动方向之后,还可以包括以下执行步骤:
步骤S15,采用方向盘实际角度、虚拟方向盘的方向盘最大角度以及载具的转向轮最大角度计算转向轮当前角度;
步骤S16,采用转向轮当前角度模拟载具的转向操作。
关于载具方向(以汽车为例)的控制,可以按照如下公式计算转向轮角度:
转向轮角度=方向盘实际角度/方向盘最大角度*转向轮最大角度;
利用物理引擎的轮式碰撞器或者自定义的载具方向控制器能够计算得到转向轮角度,从而模拟载具转向的效果。
可选地,在步骤S14,根据相对位置变化调整转动方向之后,还可以包括以下执行步骤:
步骤S17,采用载具的当前车速与载具的最大车速计算得到当前车速百分比;
步骤S18,对当前车速百分比进行插值平滑处理,调整虚拟方向盘的转动速度。
在现实的汽车高速行驶过程中,实际方向盘会变得沉重,从而避免因实际方向盘急剧的转动而导致汽车失去控制。为此,随着载具运行速度加快,对虚拟方向盘的转动速度可以对当前车速百分比(即当前车速/最高车速)进行插值平滑。插值速度越快,虚拟方向盘越灵活,反之则虚拟方向盘越沉重,由此避免载具在高速运动时,游戏玩家因无法真实感受到沉重感而导致不当操作,进而引发载具失去控制。
插值运算可以按照如下算法执行:
var angleSpeed=steeringWheelCurve.Evaluate(carCtrl.SpeedPercent);
angle=Mathf.MoveTowards(angle,targetAngle,angleSpeed*Time.fixedDeltaTime);
即,从当前角度变为目标角度,delta值发生了变化,并且delta值可以根据angleSpeed求得。
根据本发明其中一实施例,提供了一种驾驶交互装置的实施例,图3是根据本发明其中一实施例的驾驶交互装置的结构框图,如图3所示,该装置包括:确定模块10,用于在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,虚拟方向盘用于控制载具的行驶方向;第一调整模块20,用于根据第一位置和第二位置的相对位置变化调整虚拟方向盘的转动方向。
可选地,确定模块10包括:检测单元(图中未示出),用于对虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒进行碰撞相交检测,其中,左手控制器所在位置与第一位置存在映射关系,右手控制器所在位置与第二位置存在映射关系;确定单元(图中未示出),用于确定虚拟方向盘的包围盒与左手控制器的包围盒和/或虚拟方向盘的包围盒与右手控制器的包围盒发生相交,则将第一位置与第二位置调整至与虚拟方向盘相适配的初始位置。
可选地,图4是根据本发明其中一优选实施例的驾驶交互装置的结构框图,如图4所示,上述装置还包括:指引模块30,用于在碰撞检测区域提供与第一位置和第二位置关联的指引手势信息,其中,指引手势信息用于引导左手控制器和/或右手控制器向靠近虚拟方向盘的方向移动。
可选地,第一调整模块20包括:计算单元(图中未示出),用于采用第一位置和第二位置计算虚拟方向盘的方向盘预期角度;处理单元(图中未示出),用于通过方向盘预期角度进行极值约束处理和插值平滑处理,得到虚拟方向盘的方向盘实际角度;调整单元(图中未示出),用于按照方向盘实际角度调整转动方向。
可选地,计算单元(图中未示出)包括:第一计算子单元(图中未示出),用于采用第一位置和第二位置计算投影至虚拟方向盘所在平面的投影方向向量;第二计算子单元(图中未示出),用于采用投影方向向量与虚拟方向盘的初始方向向量计算有向夹角;第三计算子单元(图中未示出),用于采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差;第四计算子单元(图中未示出),用于通过本帧角度差计算方向盘预期角度。
可选地,如图4所示,上述装置还包括:第一计算模块40,用于采用方向盘实际角度、虚拟方向盘的方向盘最大角度以及载具的转向轮最大角度计算转向轮当前角度;模拟模块50,用于采用转向轮当前角度模拟载具的转向操作。
可选地,如图4所示,上述装置还包括:第二计算模块60,用于采用载具的当前车速与载具的最大车速计算得到当前车速百分比;第二调整模块70,用于对当前车速百分比进行插值平滑处理,调整虚拟方向盘的转动速度。
可选地,如图4所示,上述装置还包括:建立模块80,用于在载具与预设空间之间建立父子层级关系,其中,预设空间包含于载具的容置空间,载具为父子层级关系中的父节点,预设空间为父子层级关系中的子节点,载具的空间变换由预设空间继承;建立模块,还用于在预设空间与设备集合之间建立父子层级关系,其中,设备集合包括:左手控制器、右手控制器以及头戴式显示器,预设空间为父子层级关系中的父节点,设备集合为父子层级关系中的子节点,预设空间的空间变换由设备集合继承。
根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述驾驶交互方法。上述存储介质可以包括但不限于:U盘、只读存储器(ROM)、随机存取存储器(RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述驾驶交互方法。上述处理器可以包括但不限于:微处理器(MCU)或可编程逻辑器件(FPGA)等的处理装置。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (16)
1.一种驾驶交互方法,其特征在于,包括:
在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,所述虚拟方向盘用于控制载具的行驶方向;
根据所述第一位置和所述第二位置的相对位置变化调整所述虚拟方向盘的转动方向;
其中,在所述碰撞检测区域内确定所述第一位置与所述第二位置包括:对所述虚拟方向盘的包围盒与左手控制器的包围盒和/或所述虚拟方向盘的包围盒与右手控制器的包围盒进行碰撞相交检测,其中,左手控制器所在位置与所述第一位置存在映射关系,右手控制器所在位置与所述第二位置存在映射关系;确定所述虚拟方向盘的包围盒与左手控制器的包围盒和/或所述虚拟方向盘的包围盒与右手控制器的包围盒发生相交,则将所述第一位置与所述第二位置调整至与所述虚拟方向盘相适配的初始位置。
2.根据权利要求1所述的方法,其特征在于,在确定所述第一位置与所述第二位置之前,还包括:
在所述碰撞检测区域提供与所述第一位置和所述第二位置关联的指引手势信息,其中,所述指引手势信息用于引导左手控制器和/或右手控制器向靠近所述虚拟方向盘的方向移动。
3.根据权利要求1所述的方法,其特征在于,根据所述相对位置变化调整所述转动方向包括:
采用所述第一位置和所述第二位置计算所述虚拟方向盘的方向盘预期角度;
通过所述方向盘预期角度进行极值约束处理和插值平滑处理,得到所述虚拟方向盘的方向盘实际角度;
按照所述方向盘实际角度调整所述转动方向。
4.根据权利要求3所述的方法,其特征在于,采用所述第一位置和所述第二位置计算所述方向盘预期角度包括:
采用所述第一位置和所述第二位置计算投影至所述虚拟方向盘所在平面的投影方向向量;
采用所述投影方向向量与所述虚拟方向盘的初始方向向量计算有向夹角;
采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差;
通过所述本帧角度差计算所述方向盘预期角度。
5.根据权利要求3所述的方法,其特征在于,在根据所述相对位置变化调整所述转动方向之后,还包括:
采用所述方向盘实际角度、所述虚拟方向盘的方向盘最大角度以及所述载具的转向轮最大角度计算转向轮当前角度;
采用所述转向轮当前角度模拟所述载具的转向操作。
6.根据权利要求1所述的方法,其特征在于,在根据所述相对位置变化调整所述转动方向之后,还包括:
采用所述载具的当前车速与所述载具的最大车速计算得到当前车速百分比;
对所述当前车速百分比进行插值平滑处理,调整所述虚拟方向盘的转动速度。
7.根据权利要求1所述的方法,其特征在于,在确定所述第一位置与所述第二位置之前,还包括:
在所述载具与预设空间之间建立父子层级关系,其中,所述预设空间包含于所述载具的容置空间,所述载具为所述父子层级关系中的父节点,所述预设空间为所述父子层级关系中的子节点,所述载具的空间变换由所述预设空间继承;
在所述预设空间与设备集合之间建立父子层级关系,其中,所述设备集合包括:左手控制器、右手控制器以及头戴式显示器,所述预设空间为所述父子层级关系中的父节点,所述设备集合为所述父子层级关系中的子节点,所述预设空间的空间变换由所述设备集合继承。
8.一种驾驶交互装置,其特征在于,包括:
确定模块,用于在虚拟方向盘所在碰撞检测区域内确定左手控制器所在的第一位置与右手控制器所在的第二位置,其中,所述虚拟方向盘用于控制载具的行驶方向;
第一调整模块,用于根据所述第一位置和所述第二位置的相对位置变化调整所述虚拟方向盘的转动方向;
其中,所述确定模块包括:检测单元,用于对所述虚拟方向盘的包围盒与左手控制器的包围盒和/或所述虚拟方向盘的包围盒与右手控制器的包围盒进行碰撞相交检测,其中,左手控制器所在位置与所述第一位置存在映射关系,右手控制器所在位置与所述第二位置存在映射关系;确定单元,用于确定所述虚拟方向盘的包围盒与左手控制器的包围盒和/或所述虚拟方向盘的包围盒与右手控制器的包围盒发生相交,则将所述第一位置与所述第二位置调整至与所述虚拟方向盘相适配的初始位置。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
指引模块,用于在所述碰撞检测区域提供与所述第一位置和所述第二位置关联的指引手势信息,其中,所述指引手势信息用于引导左手控制器和/或右手控制器向靠近所述虚拟方向盘的方向移动。
10.根据权利要求8所述的装置,其特征在于,所述第一调整模块包括:
计算单元,用于采用所述第一位置和所述第二位置计算所述虚拟方向盘的方向盘预期角度;
处理单元,用于通过所述方向盘预期角度进行极值约束处理和插值平滑处理,得到所述虚拟方向盘的方向盘实际角度;
调整单元,用于按照所述方向盘实际角度调整所述转动方向。
11.根据权利要求10所述的装置,其特征在于,所述计算单元包括:
第一计算子单元,用于采用所述第一位置和所述第二位置计算投影至所述虚拟方向盘所在平面的投影方向向量;
第二计算子单元,用于采用所述投影方向向量与所述虚拟方向盘的初始方向向量计算有向夹角;
第三计算子单元,用于采用当前帧对应的有向夹角与上一帧对应的有向夹角进行减法运算并对计算结果进行边界处理,得到本帧角度差;
第四计算子单元,用于通过所述本帧角度差计算所述方向盘预期角度。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第一计算模块,用于采用所述方向盘实际角度、所述虚拟方向盘的方向盘最大角度以及所述载具的转向轮最大角度计算转向轮当前角度;
模拟模块,用于采用所述转向轮当前角度模拟所述载具的转向操作。
13.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二计算模块,用于采用所述载具的当前车速与所述载具的最大车速计算得到当前车速百分比;
第二调整模块,用于对所述当前车速百分比进行插值平滑处理,调整所述虚拟方向盘的转动速度。
14.根据权利要求8所述的装置,其特征在于,所述装置还包括:
建立模块,用于在所述载具与预设空间之间建立父子层级关系,其中,所述预设空间包含于所述载具的容置空间,所述载具为所述父子层级关系中的父节点,所述预设空间为所述父子层级关系中的子节点,所述载具的空间变换由所述预设空间继承;
所述建立模块,还用于在所述预设空间与设备集合之间建立父子层级关系,其中,所述设备集合包括:左手控制器、右手控制器以及头戴式显示器,所述预设空间为所述父子层级关系中的父节点,所述设备集合为所述父子层级关系中的子节点,所述预设空间的空间变换由所述设备集合继承。
15.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7中任意一项所述的驾驶交互方法。
16.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至7中任意一项所述的驾驶交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810103126.XA CN108319369B (zh) | 2018-02-01 | 2018-02-01 | 驾驶交互方法、装置、存储介质及处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810103126.XA CN108319369B (zh) | 2018-02-01 | 2018-02-01 | 驾驶交互方法、装置、存储介质及处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108319369A CN108319369A (zh) | 2018-07-24 |
CN108319369B true CN108319369B (zh) | 2021-04-27 |
Family
ID=62890520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810103126.XA Active CN108319369B (zh) | 2018-02-01 | 2018-02-01 | 驾驶交互方法、装置、存储介质及处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108319369B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960404B (zh) * | 2019-02-15 | 2020-12-18 | 联想(北京)有限公司 | 一种数据处理方法及装置 |
CN116185244B (zh) * | 2023-04-27 | 2023-08-01 | 山东捷瑞数字科技股份有限公司 | 一种操作三维场景中物体旋转的方法、系统、装置及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104238738A (zh) * | 2013-06-07 | 2014-12-24 | 索尼电脑娱乐美国公司 | 在头戴式系统内产生增强虚拟现实场景的系统和方法 |
CN105359063A (zh) * | 2013-06-09 | 2016-02-24 | 索尼电脑娱乐公司 | 利用追踪的头戴式显示器 |
CN105966456A (zh) * | 2015-03-16 | 2016-09-28 | 昶洧香港有限公司 | 用于控制车辆转向的车辆控制系统 |
CN106362402A (zh) * | 2016-10-12 | 2017-02-01 | 大连文森特软件科技有限公司 | 基于在线可视化编程的vr驾驶游戏制作与体验系统 |
CN106445176A (zh) * | 2016-12-06 | 2017-02-22 | 腾讯科技(深圳)有限公司 | 基于虚拟现实技术的人机交互系统及交互方法 |
CN106896909A (zh) * | 2015-12-30 | 2017-06-27 | 昶洧新能源汽车发展有限公司 | 利用虚拟现实系统的远程驾驶 |
US9744449B2 (en) * | 2014-12-22 | 2017-08-29 | Sony Interactive Entertainment Inc. | Peripheral devices having dynamic weight distribution to convey sense of weight in HMD environments |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9898869B2 (en) * | 2015-09-09 | 2018-02-20 | Microsoft Technology Licensing, Llc | Tactile interaction in virtual environments |
CN108027664B (zh) * | 2015-09-28 | 2021-05-28 | 微软技术许可有限责任公司 | 统一的虚拟现实平台 |
-
2018
- 2018-02-01 CN CN201810103126.XA patent/CN108319369B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104238738A (zh) * | 2013-06-07 | 2014-12-24 | 索尼电脑娱乐美国公司 | 在头戴式系统内产生增强虚拟现实场景的系统和方法 |
CN105359063A (zh) * | 2013-06-09 | 2016-02-24 | 索尼电脑娱乐公司 | 利用追踪的头戴式显示器 |
US9744449B2 (en) * | 2014-12-22 | 2017-08-29 | Sony Interactive Entertainment Inc. | Peripheral devices having dynamic weight distribution to convey sense of weight in HMD environments |
CN105966456A (zh) * | 2015-03-16 | 2016-09-28 | 昶洧香港有限公司 | 用于控制车辆转向的车辆控制系统 |
CN106896909A (zh) * | 2015-12-30 | 2017-06-27 | 昶洧新能源汽车发展有限公司 | 利用虚拟现实系统的远程驾驶 |
CN106362402A (zh) * | 2016-10-12 | 2017-02-01 | 大连文森特软件科技有限公司 | 基于在线可视化编程的vr驾驶游戏制作与体验系统 |
CN106445176A (zh) * | 2016-12-06 | 2017-02-22 | 腾讯科技(深圳)有限公司 | 基于虚拟现实技术的人机交互系统及交互方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108319369A (zh) | 2018-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10022628B1 (en) | System for feature-based motion adaptation | |
JP5619964B2 (ja) | 拡張現実感シミュレーション連続体 | |
US10518188B2 (en) | Controlling physical toys using a physics engine | |
US11806622B2 (en) | Information display method and apparatus, electronic device, and computer storage medium | |
US9821224B2 (en) | Driving simulator control with virtual skeleton | |
CN108630053A (zh) | 一种基于虚拟现实技术的三维动画装配教学方法和装置 | |
EP3914367B1 (en) | A toy system for augmented reality | |
CN106780674B (zh) | 镜头移动方法和装置 | |
KR101947270B1 (ko) | 가상현실(vr)·증강현실(ar) 융합형 아케이드 게임 시스템 | |
US20130079079A1 (en) | Digital jigsaw puzzle game for mobile device platforms | |
US11409276B2 (en) | Method and system for controlling robots within in an interactive arena and generating a virtual overlayed | |
CN108245890B (zh) | 控制虚拟场景中物体运动的方法和装置 | |
CN108319369B (zh) | 驾驶交互方法、装置、存储介质及处理器 | |
CN108543309A (zh) | 在增强现实中控制虚拟控制对象移动的方法、装置及终端 | |
WO2014022834A1 (en) | Constraint evaluation in directed acyclic graphs | |
CN108196669A (zh) | 游戏角色模型的修正方法、装置、处理器及头戴式显示设备 | |
CN105938629A (zh) | 一种信息处理方法及电子设备 | |
US11393153B2 (en) | Systems and methods performing object occlusion in augmented reality-based assembly instructions | |
CN116645850A (zh) | 记录的物理交互回放 | |
Liang | Generation of a virtual reality‐based automotive driving training system for CAD education | |
Ali et al. | Augmented reality based online application for e-shopping | |
CN112008724B (zh) | 轨迹工艺结果的展示方法及装置、电子设备 | |
Yamaguchi et al. | Development of bicycle simulator with tilt angle control tilt angle | |
Chen et al. | Performance Characteristics of a Camera-Based Tangible Input Device for Manipulation of 3D Information. | |
Maio | Jogo Sério de Realidade Aumentada Para Cadeira de Rodas Inteligente |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |