CN111803930A - 多平台交互方法、装置以及电子设备 - Google Patents

多平台交互方法、装置以及电子设备 Download PDF

Info

Publication number
CN111803930A
CN111803930A CN202010701938.1A CN202010701938A CN111803930A CN 111803930 A CN111803930 A CN 111803930A CN 202010701938 A CN202010701938 A CN 202010701938A CN 111803930 A CN111803930 A CN 111803930A
Authority
CN
China
Prior art keywords
ray
interaction
target
target interaction
event
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.)
Pending
Application number
CN202010701938.1A
Other languages
English (en)
Inventor
潘科廷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202010701938.1A priority Critical patent/CN111803930A/zh
Publication of CN111803930A publication Critical patent/CN111803930A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提供了一种多平台交互方法、装置以及电子设备,涉及游戏技术领域,缓解了相同的游戏程序无法同时满足三维和二维的多平台交互从而使游戏程序开发成本较大的技术问题。该方法包括:确定所述目标交互设备对应的目标交互模式;在所述目标交互模式下,监听所述目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射;确定射线投射到的目标交互控件,以及针对所述目标交互控件触发的射线事件;将所述射线事件关联至所述目标交互控件,以便所述目标交互控件响应所述射线事件。

Description

多平台交互方法、装置以及电子设备
技术领域
本申请涉及游戏技术领域,尤其是涉及一种多平台交互方法、装置以及电子设备。
背景技术
随着游戏领域的不断发展,可供玩家使用的游戏设备种类越来越多,有电视游戏机、掌上游戏机、个人计算机(Personal Computer,PC)、虚拟现实技术(Virtual Reality,VR)设备,等等。不同种类游戏设备之间的硬件差别也较大,例如,PC设备的硬件包括显示器、主机、键盘、鼠标等,而VR设备的硬件包括VR头显等。
目前,由于三维交互设备(如VR设备)与二维交互设备(如PC)的交互存在诸多的不同,相同的游戏程序无法同时满足三维和二维的多平台交互,使游戏程序的开发成本较大。
发明内容
本发明的目的在于提供一种多平台交互方法、装置以及电子设备,以缓解相同的游戏程序无法同时满足三维和二维的多平台交互从而使游戏程序开发成本较大的技术问题。
第一方面,本申请实施例提供了一种多平台交互方法,应用于交互系统,所述交互系统用于目标交互设备与游戏的交互,所述目标交互设备为三维交互设备或者二维交互设备,所述游戏包括交互控件;所述方法包括:
确定所述目标交互设备对应的目标交互模式;
在所述目标交互模式下,监听所述目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射;
确定射线投射到的目标交互控件,以及针对所述目标交互控件触发的射线事件;
将所述射线事件关联至所述目标交互控件,以便所述目标交互控件响应所述射线事件。
在一个可能的实现中,所述确定所述目标交互设备对应的目标交互模式的步骤包括:
确定所述目标交互设备的目标类型;
基于预先确定的类型与交互模式的对应关系,确定所述目标类型对应的目标交互模式下的键位表以及射线初始数据。
在一个可能的实现中,所述射线初始数据包括:
射线的标识、射线类型、射线的规格、射线的配置参数以及绑定的输入事件集合。
在一个可能的实现中,所述射线类型包括摄像机射线指针、空间射线指针以及用于交互的碰撞盒抽象射线指针。
在一个可能的实现中,每个所述用于交互的碰撞盒抽象射线指针绑定一个输入轴;所述确定射线投射到的目标交互控件的步骤,包括:
基于所述用于交互的碰撞盒抽象射线指针绑定的输入轴,对所述目标输入事件的投射射线指针进行碰撞检测,通过过滤确定所述投射射线指针碰撞的目标碰撞盒抽象射线指针,所述目标碰撞盒抽象射线指针对应于所述目标交互控件。
在一个可能的实现中,针对所述目标交互控件触发的射线事件包括,所述投射射线指针的移动逻辑和/或拖拽逻辑。
在一个可能的实现中,所述将所述射线事件关联至所述目标交互控件的步骤,包括:
基于所述投射射线指针的移动逻辑和/或拖拽逻辑,确定针对所述目标交互控件的操作指令;
将针对所述目标交互控件的操作指令关联至所述目标交互控件。
在一个可能的实现中,所述操作指令包括:
按下、抬起、进入、离开、选中以及取消中的一项或多项。
在一个可能的实现中,当所述目标交互设备为三维交互设备时,所述目标交互设备为多个。
第二方面,提供了一种多平台交互装置,应用于交互系统,所述交互系统用于目标交互设备与游戏的交互,所述目标交互设备为三维交互设备或者二维交互设备,所述游戏包括交互控件;所述装置包括:
第一确定模块,用于确定所述目标交互设备对应的目标交互模式;
投射模块,用于在所述目标交互模式下,监听所述目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射;
第二确定模块,用于确定射线投射到的目标交互控件,以及针对所述目标交互控件触发的射线事件;
关联模块,用于将所述射线事件关联至所述目标交互控件,以便所述目标交互控件响应所述射线事件。
第三方面,本申请实施例又提供了一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的第一方面所述方法。
第四方面,本申请实施例又提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述的第一方面所述方法。
本申请实施例带来了以下有益效果:
本申请实施例提供的一种多平台交互方法、装置以及电子设备,能够确定目标交互设备对应的目标交互模式,便可以在该目标交互模式下监听目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射,以确定射线投射到的目标交互控件以及针对目标交互控件触发的射线事件,从而能够将射线事件关联至目标交互控件,以便目标交互控件响应射线事件,本方案中,通过在目标交互设备对应的目标交互模式下监听及确定出射线事件,使目标交互控件对该射线事件进行响应,使射线能够通过物理检测的方式来检测当前UI,实现了碰撞盒的射线化,相当于三维与二维交互输入之间的一个中间映射层,能够同时满足三维场景和二维场景,可以适用于二维和三维中的任何输入设备,进而实现了三维和二维的多平台交互。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的多平台交互方法的流程示意图;
图2为本申请实施例提供的多平台交互方法的另一流程示意图;
图3示出了本申请实施例提供的多平台交互方法中的系统框架示例图;
图4为本申请实施例提供的一种多平台交互装置的结构示意图;
图5示出了本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
目前,VR技术的应用越来越多,随之而来的种种问题有待问解决。其中,VR设备与台式的个人计算机(Personal Computer,简称PC)交互存在诸多的不同,开发者很难同时开发同样的内容在两个截然不同的平台上。
由于两者具有诸多不同,对于PC与VR系统的区别,下面主要通过虚拟摄像机、输入设备、用户界面(User Interface,UI)三个方面进行说明。
对于虚拟摄像机的控制权:PC的虚拟摄像机主要是通过屏幕来映射,所以理论上这个屏幕是静止不动的,玩家主要通过使用键鼠或者手柄来控制屏幕里面的虚拟摄像机旋转;VR的虚拟摄像机映射在头盔的屏幕上,所以现实中头盔是一直在动的,因为使用者的头部运动是无法预测的,换言之程序是对游戏中虚拟相机没有控制权。
对于输入设备的差别:PC的设备主要是键盘、键鼠或者手柄,由于大部分的UI交互中,键鼠或者手柄的输入都是映射到屏幕的二维空间中,所以在PC交互中是不需要考虑深度和三维旋转这些维度的;普遍的VR输入设备是双手的控制器,通常情况下输入设备都有两个,这就是与PC最大的不同之一,可以等同理解为PC有两个鼠标可以输入。
对于UI的使用差异:PC设备中大部分UI都是覆盖整个屏幕,通常情况下打开UI时会屏蔽其余的交互输入;在VR中进行UI交互时,大部分时间时不屏蔽其他交互的,同时因为有两个控制器的原因,对于UI而言有两个射线同时进行交互,而且,VR中UI是三维空间的,所以很难确认使用者想交互哪一个UI。
目前,通常是使用移动UI框架-射线(Canvas-Raycaster)的方式来接收UI交互的事件。其中,Canvas也可以理解为Canvas画布,是依赖分辨率的位图画布,可以在Canvas上面绘制任何图形,甚至加载照片。
由于三维交互设备(如VR设备)与二维交互设备(如PC)的交互存在诸多的不同,相同的游戏内容无法同时满足三维和二维的多平台交互,使游戏的开发成本提高,而且游戏的使用便利程度降低。
基于此,本申请实施例提供了一种多平台交互方法、装置以及电子设备,通过该方法可以缓解相同的游戏程序无法同时满足三维和二维的多平台交互从而使游戏程序开发成本较大的技术问题。
下面结合附图对本发明实施例进行进一步地介绍。
图1为本申请实施例提供的一种多平台交互方法的流程示意图。其中,该方法应用于交互系统,交互系统用于目标交互设备与游戏的交互,目标交互设备为三维交互设备或者二维交互设备,游戏包括交互控件。如图1所示,该方法包括:
步骤S110,确定目标交互设备对应的目标交互模式。
本申请实施例中的三维交互设备可以是VR,二维交互设备可以是PC,游戏包括的交互控件可以是用户界面(User Interface,UI)。而目标交互模式便则可以包括VR模式或者PC模式。目标交互设备则可以是手柄、鼠标、键盘等交互设备。
本步骤可以在设备的初始化过程中执行,在该过程中,交互系统引入了VR和PC两个模式的概念,通过判断当前模式来初始化对应的管理器以及输入模块(InputModule)。其中,对应的管理器指的是VR模式管理器、PC模式管理器。通过独立的管理器能够管理多个射线(Pointer),实现在VR模式内可以同时存在多个射线。
在实际应用中,本申请实施例中的VR设备可以是具有6自由度(degree offreedom,DOF),同时双手也具有6DOF追踪的控制器。需要说明的是,3DOF是指有3个转动角度的自由度,而6DOF是指除了3个转动角度外,再加上下、前后、左右这3个位置相关的自由度。3DOF的VR眼镜或VR设备,是指该VR设备可以检测到头部向不同方向的自由转动,但是不能检测到头部的前后左右的空间位移。而6DOF的VR设备或VR眼镜,则除了检测头部的转动带来的视野角度变化外,还能够检测到由于身体移动带来的上下前后左右位移的变化。
步骤S120,在目标交互模式下,监听目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射。
其中,射线是3D场景中一个点向一个方向发射的一条无终点的线,在发射轨迹中与其他物体发生碰撞时,它将停止发射。在游戏中射线的应用范围比较广,可以用于角色移动、碰撞检测等,如检测子弹飞行是否击中目标。而本步骤也可以理解为交互系统对射线的投射过程。
步骤S130,确定射线投射到的目标交互控件,以及针对目标交互控件触发的射线事件。
其中,目标交互控件是射线在游戏中投射到的交互控件。本步骤也可以理解为交互系统对射线的派发过程。本申请实施例以一个逻辑帧内,射线处理发射事件数据为例进行说明。
步骤S140,将射线事件关联至目标交互控件,以便目标交互控件响应射线事件。
对于射线事件的接收,需要说明的是,射线投射后,可以得到操作指令,例如,触发指令(点击指令)、拖拽指令等等。
本申请实施例中,利用碰撞器(Collider)的方式来替换移动UI框架(Canvas),使射线通过物理检测的方式来检测当前UI,实现了碰撞盒射线化。其中,Collider能够模拟虚拟场景中的碰撞的效果,具体的,Collider根据物理引擎引发碰撞,产生碰撞的效果,可以调用函数,实现碰撞进入、逗留、离开、反弹等类似效果。
通过在目标交互设备对应的目标交互模式下监听及确定出射线事件,使目标交互控件对该射线事件进行响应,既能满足同时存在多条交互射线,还能够同时满足3D空间和2D空间的情况,实现了VR与PC交互输入之间的一个中间映射层,能够适用于二维和三维中的任何输入设备,实现了VR和PC的多平台交互。而且,由于对射线的统一管理,还可以节约射线相关的性能。UI资源也只需要设计一套,相关控件可以自行拼接,更加方便了UI的设计过程。
下面对上述步骤进行详细介绍。
在一些实施例中,交互设备可以是二维交互设备,也可以是三维交互设备。作为一个示例,当目标交互设备为三维交互设备时,目标交互设备为多个。例如,目标交互设备可以为VR设备中的左手手柄,右手手柄、VR眼镜等多个三维交互设备。
在一些实施例中,可以基于目标交互设备的目标类型来确定其对应的目标交互模式。作为一个示例,上述步骤S110可以包括如下步骤:
步骤a),确定目标交互设备的目标类型;
步骤b),基于预先确定的类型与交互模式的对应关系,确定目标类型对应的目标交互模式下的键位表以及射线初始数据。
对于上述步骤b),键位表以及射线初始数据的确定过程可以理解为两个初始化的过程。
其中,键位表对应输入模组(InputModule)的初始化(如图2中的InputModule.Process),InputModul可以包括鼠标、键盘、手柄和VR输入设备双手的控制器等设备。需要说明的是,InputModule初始化的内容可以包括两种初始化。第一,初始化VR、PCInput,同时也是输入派发器(InputDispatcher)的重要部件,输入部分初始化主要是创建对应模式(VR模式、PC模式等)的键位表;第二,将预先配置的选中物体传入交互事件系统(InteractEventSystem)中,以此激活手柄的导航功能。
射线的数据初始化对应射线初始数据,在整个射线的处理周期贯穿的是射线的数据(如图2中的ProcessPointerData),InputModule访问射线管理器(PointerManager),遍历当前所有射线实例,调用对应的初始化数据接口,将对应的数据传入初始化好的数据体中,以用于事件的派发。
基于上述步骤a)和步骤b),射线初始数据可以包含多种方面的射线信息。作为一个示例,射线初始数据包括:射线的标识、射线类型、射线的规格、射线的配置参数以及绑定的输入事件集合。
其中,射线的规格可以包括射线半径(即射线粗细)、射线最大射线距离等射线数据。
在实际应用中,每个射线的初始数据可以包含射线类型参数(PointerParams)、用于过滤不同层级(Layer,UI框架中UI窗体的层级)以及同一层级下不同标识(Tag)UI控件(LayerAndTagFilter)、定义本射线事件数据的方法(GetDefaultPointerEventData)、具体射线的处理方法(ProcessRaycast)以及唯一标识来获取射线实例(PointerId),等等多种方面的射线信息。例如,射线身份标识号码(Identity,ID)、射线起点和方向、射线可与何层的碰撞器交互、用于目标过滤的自定义标签(tag)列表、最大缓存目标数量、自定义目标排序方法、自定义指针状态getter、自定义射线外观渲染接口、射线绑定的输入事件集合、射线的自定义参数等配置参数。
基于此,射线初始数据中还可以包含射线指针的相关信息。作为一个示例,射线类型包括摄像机射线指针、空间射线指针以及用于交互的碰撞盒抽象射线指针。
本申请实施例中,射线可以具有多种类型,包括PC模式的屏幕鼠标射线、PC和VR模式的空间线形射线、柱形射线和collider交互碰撞盒。
需要说明的是,摄像机射线指针(CameraRayPointer)多用于PC模式,其是从屏幕一点,垂直于屏幕向远离摄像机方向发射射线,鼠标射线是其中一种常用实现。
在实际应用中,空间射线指针(SpaceRayPointer)可用于PC和VR模式,其是以一个transform的位置为起点,向该transform的z轴方向为射线方向发射射线。
碰撞射线指针(ColliderRayPointer)将用于交互的碰撞盒抽象成为一类指针,实质就是一般的碰撞盒之间的交互碰撞,与射线无关,该抽象是为了将所有交互接口和机制统一起来。
基于此,交互系统可以通过输入轴进行碰撞检测,以确定射线投射到的目标交互控件。作为一个示例,每个用于交互的碰撞盒抽象射线指针绑定一个输入轴;上述步骤S130中确定射线投射到的目标交互控件的过程可以包括如下步骤:
步骤c),基于用于交互的碰撞盒抽象射线指针绑定的输入轴,对目标输入事件的投射射线指针进行碰撞检测,通过过滤确定投射射线指针碰撞的目标碰撞盒抽象射线指针,目标碰撞盒抽象射线指针对应于目标交互控件。
对于上述步骤c),用于交互的碰撞盒可以抽象成为一类指针,该抽象是为了将所有交互接口和机制进行统一。射线的投射具体由输入模组(InputModule)来驱动,同时InputModule由互动事件系统更新(如图2中的InteractionEventSystem.Update)方法驱动每帧执行。其中的投射结果可以经过过滤器(Filter)过滤后,用于下一步的事件派发。
对于射线数据的准备(PreparePointerData)方法是通过调用每个已激活指针对象的PreparePointerData方法,初始化每个已激活的指针事件数据。ProcessPointerCast的方法是通过调用每个已激活指针对象的具体射线的处理(ProcessPointerCast)方法,处理每个已激活的指针的碰撞检测并缓存结果。
对于射线事件流程(ProcessPointerEvent)的方法,监听输入事件,并对所有已激活的指针碰撞检测的目标调用指定的命令接口,传递指针事件数据。子类中实现。
对于射线渲染流程(ProcessPointerRenderring)的方法,则是通过调用每个已激活指针对象的ProcessRenderring方法,处理每个需要外观的指针的外观渲染逻辑。PCInputModule继承了AbstractInputModule在PC模式下的输入模块,依赖输入派发器(InputDispatcher)。VRInputModule继承了AbstractInputModule在VR模式下的输入模块,目前部分依赖InputDispatcher。
在实际应用中,射线事件(如图2中的ProcessPointeEvent)的派发过程可以包括输入部分,即每个射线绑定一个输入轴(Axis),输入模组(InputModule)通过输入派发器(InputDispatcher)来判定该射线是否被触发。
基于上述步骤c),射线事件的派发还可以除输入之外的其他部分。作为一个示例,针对目标交互控件触发的射线事件包括,投射射线指针的移动逻辑和/或拖拽逻辑。
除输入部分之外,射线事件的派发还包括处理射线移动逻辑和处理拖拽逻辑。其中,处理射线移动逻辑可以包括判定射线进入和离开对应控件的逻辑。处理拖拽逻辑可以面向含有拖拽属性的控件,如边框滑条。
本申请实施例中,输入、处理射线移动逻辑和处理拖拽逻辑这三个部分将输入和投影后的相关信息填入到射线的数据(PointerData)中,进而派发到过滤后的控件里。
基于此,射线事件关联至所述目标交互控件的过程可以通过移动逻辑、拖拽逻辑实现。作为一个示例,上述步骤S140可以包括如下步骤:
步骤d),基于投射射线指针的移动逻辑和/或拖拽逻辑,确定针对目标交互控件的操作指令;
步骤e),将针对目标交互控件的操作指令关联至目标交互控件。
射线事件的接收(如图2中的ProcessPointerRenderring)是从上一部分过滤后的控件会被派发对应事件,对于每个控件只需继承交互组件模板(Interaction ElementInterface),同时添加碰撞器(Collider),就可以接收到UI交互框架下发下来的消息。
基于上述步骤d)和步骤e),将针对目标交互控件的操作指令可以包括多种操作方式。作为一个示例,操作指令包括:按下、抬起、进入、离开、选中以及取消中的一项或多项。
以可选择对象(Selectable)为例,Selectable可以继承的相关接口包括:射线对应轴按下时的逻辑(IPointerDownHandler)、射线对应轴抬起时的逻辑(IPointerUpHandler)、射线进入该控件时的逻辑(IPointerEnterHandler)、射线离开该控件时的逻辑(IPointerExitHandler)、手柄相关的选中逻辑(ISelectHandler)以及手柄相关的取消选中逻辑(IDeselectHandler)。
图3示出了本申请实施例提供的多平台交互方法中的系统框架示例图。该本框架可以包括射线管理器(PointerManager)、输入模组(InputModule)、输入派发器(InputDispatcher)、交互组件模板(InteractionElementInterface)以及交互事件系统(InteractEventSystem)。
图4提供了一种多平台交互装置的结构示意图。该装置可以应用于交互系统,交互系统用于目标交互设备与游戏的交互,目标交互设备为三维交互设备或者二维交互设备,游戏包括交互控件。如图4所示,多平台交互装置400包括:
第一确定模块401,用于确定目标交互设备对应的目标交互模式;
投射模块402,用于在目标交互模式下,监听目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射;
第二确定模块403,用于确定射线投射到的目标交互控件,以及针对目标交互控件触发的射线事件;
关联模块404,用于将射线事件关联至目标交互控件,以便目标交互控件响应射线事件。
在一些实施例中,第一确定模块401具体用于:
确定目标交互设备的目标类型;
基于预先确定的类型与交互模式的对应关系,确定目标类型对应的目标交互模式下的键位表以及射线初始数据。
在一些实施例中,射线初始数据包括:
射线的标识、射线类型、射线的规格、射线的配置参数以及绑定的输入事件集合。
在一些实施例中,射线类型包括摄像机射线指针、空间射线指针以及用于交互的碰撞盒抽象射线指针。
在一些实施例中,每个用于交互的碰撞盒抽象射线指针绑定一个输入轴;第二确定模块403具体用于:
基于用于交互的碰撞盒抽象射线指针绑定的输入轴,对目标输入事件的投射射线指针进行碰撞检测,通过过滤确定投射射线指针碰撞的目标碰撞盒抽象射线指针,目标碰撞盒抽象射线指针对应于目标交互控件。
在一些实施例中,针对目标交互控件触发的射线事件包括,投射射线指针的移动逻辑和/或拖拽逻辑。
在一些实施例中,关联模块404具体用于:
基于投射射线指针的移动逻辑和/或拖拽逻辑,确定针对目标交互控件的操作指令;
将针对目标交互控件的操作指令关联至目标交互控件。
在一些实施例中,操作指令包括:
按下、抬起、进入、离开、选中以及取消中的一项或多项。
在一些实施例中,当目标交互设备为三维交互设备时,目标交互设备为多个。
本申请实施例提供的多平台交互装置,与上述实施例提供的多平台交互方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本申请实施例提供的一种电子设备,如图5所示,电子设备500包括存储器501、处理器502,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例提供的方法的步骤。
参见图5,电子设备还包括:总线503和通信接口504,处理器502、通信接口504和存储器501通过总线503连接;处理器502用于执行存储器501中存储的可执行模块,例如计算机程序。
其中,存储器501可能包含高速随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口504(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线503可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器501用于存储程序,所述处理器502在接收到执行指令后,执行所述程序,前述本申请任一实施例揭示的过程定义的装置所执行的方法可以应用于处理器502中,或者由处理器502实现。
处理器502可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器502中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器502可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器501,处理器502读取存储器501中的信息,结合其硬件完成上述方法的步骤。
对应于上述多平台交互方法,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述多平台交互方法的步骤。
本申请实施例所提供的多平台交互装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
再例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述多平台交互方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (12)

1.一种多平台交互方法,其特征在于,应用于交互系统,所述交互系统用于目标交互设备与游戏的交互,所述目标交互设备为三维交互设备或者二维交互设备,所述游戏包括交互控件;所述方法包括:
确定所述目标交互设备对应的目标交互模式;
在所述目标交互模式下,监听所述目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射;
确定射线投射到的目标交互控件,以及针对所述目标交互控件触发的射线事件;
将所述射线事件关联至所述目标交互控件,以便所述目标交互控件响应所述射线事件。
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标交互设备对应的目标交互模式的步骤包括:
确定所述目标交互设备的目标类型;
基于预先确定的类型与交互模式的对应关系,确定所述目标类型对应的目标交互模式下的键位表以及射线初始数据。
3.根据权利要求2所述的方法,其特征在于,所述射线初始数据包括:
射线的标识、射线类型、射线的规格、射线的配置参数以及绑定的输入事件集合。
4.根据权利要求3所述的方法,其特征在于,所述射线类型包括摄像机射线指针、空间射线指针以及用于交互的碰撞盒抽象射线指针。
5.根据权利要求4所述的方法,其特征在于,每个所述用于交互的碰撞盒抽象射线指针绑定一个输入轴;所述确定射线投射到的目标交互控件的步骤,包括:
基于所述用于交互的碰撞盒抽象射线指针绑定的输入轴,对所述目标输入事件的投射射线指针进行碰撞检测,通过过滤确定所述投射射线指针碰撞的目标碰撞盒抽象射线指针,所述目标碰撞盒抽象射线指针对应于所述目标交互控件。
6.根据权利要求5所述的方法,其特征在于,针对所述目标交互控件触发的射线事件包括,所述投射射线指针的移动逻辑和/或拖拽逻辑。
7.根据权利要求6所述的方法,其特征在于,所述将所述射线事件关联至所述目标交互控件的步骤,包括:
基于所述投射射线指针的移动逻辑和/或拖拽逻辑,确定针对所述目标交互控件的操作指令;
将针对所述目标交互控件的操作指令关联至所述目标交互控件。
8.根据权利要求7所述的方法,其特征在于,所述操作指令包括:
按下、抬起、进入、离开、选中以及取消中的一项或多项。
9.根据权利要求1所述的方法,其特征在于,当所述目标交互设备为三维交互设备时,所述目标交互设备为多个。
10.一种多平台交互装置,其特征在于,应用于交互系统,所述交互系统用于目标交互设备与游戏的交互,所述目标交互设备为三维交互设备或者二维交互设备,所述游戏包括交互控件;所述装置包括:
第一确定模块,用于确定所述目标交互设备对应的目标交互模式;
投射模块,用于在所述目标交互模式下,监听所述目标交互设备的输入事件,并针对监听到的目标输入事件进行射线投射;
第二确定模块,用于确定射线投射到的目标交互控件,以及针对所述目标交互控件触发的射线事件;
关联模块,用于将所述射线事件关联至所述目标交互控件,以便所述目标交互控件响应所述射线事件。
11.一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至9任一项所述的方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行所述权利要求1至9任一项所述的方法。
CN202010701938.1A 2020-07-20 2020-07-20 多平台交互方法、装置以及电子设备 Pending CN111803930A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010701938.1A CN111803930A (zh) 2020-07-20 2020-07-20 多平台交互方法、装置以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010701938.1A CN111803930A (zh) 2020-07-20 2020-07-20 多平台交互方法、装置以及电子设备

Publications (1)

Publication Number Publication Date
CN111803930A true CN111803930A (zh) 2020-10-23

Family

ID=72865952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010701938.1A Pending CN111803930A (zh) 2020-07-20 2020-07-20 多平台交互方法、装置以及电子设备

Country Status (1)

Country Link
CN (1) CN111803930A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114578972A (zh) * 2022-05-05 2022-06-03 江西科骏实业有限公司 Vr场景中兼容平面与曲面ui事件的触发方法及系统
CN117215682A (zh) * 2023-07-27 2023-12-12 北京小米机器人技术有限公司 交互事件执行方法及装置、电子设备、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103135755A (zh) * 2011-12-02 2013-06-05 深圳泰山在线科技有限公司 交互系统及方法
CN106861184A (zh) * 2016-12-28 2017-06-20 北京乐动卓越科技有限公司 一种在沉浸式vr游戏中实现人机交互的方法和系统
CN109584148A (zh) * 2018-11-27 2019-04-05 重庆爱奇艺智能科技有限公司 一种在vr设备中处理二维界面的方法和装置
CN110639204A (zh) * 2019-10-18 2020-01-03 网易(杭州)网络有限公司 游戏数据处理方法、装置以及终端设备
CN111142669A (zh) * 2019-12-28 2020-05-12 上海米哈游天命科技有限公司 二维界面到三维场景的交互方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103135755A (zh) * 2011-12-02 2013-06-05 深圳泰山在线科技有限公司 交互系统及方法
CN106861184A (zh) * 2016-12-28 2017-06-20 北京乐动卓越科技有限公司 一种在沉浸式vr游戏中实现人机交互的方法和系统
CN109584148A (zh) * 2018-11-27 2019-04-05 重庆爱奇艺智能科技有限公司 一种在vr设备中处理二维界面的方法和装置
CN110639204A (zh) * 2019-10-18 2020-01-03 网易(杭州)网络有限公司 游戏数据处理方法、装置以及终端设备
CN111142669A (zh) * 2019-12-28 2020-05-12 上海米哈游天命科技有限公司 二维界面到三维场景的交互方法、装置、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114578972A (zh) * 2022-05-05 2022-06-03 江西科骏实业有限公司 Vr场景中兼容平面与曲面ui事件的触发方法及系统
CN117215682A (zh) * 2023-07-27 2023-12-12 北京小米机器人技术有限公司 交互事件执行方法及装置、电子设备、存储介质

Similar Documents

Publication Publication Date Title
KR100968661B1 (ko) 컴퓨팅 장치에서 실행하는 애플리케이션을 동적으로향상시키는 시스템, 방법 및 컴퓨터 프로그램 제품
EP3939681A1 (en) Virtual object control method and apparatus, device, and storage medium
US11654365B2 (en) Secure anti-cheat system
EP3129871B1 (en) Generating a screenshot
US5867175A (en) Method and apparatus for scriping animation
US7996787B2 (en) Plug-in architecture for window management and desktop compositing effects
US10478720B2 (en) Dynamic assets for creating game experiences
CN111803930A (zh) 多平台交互方法、装置以及电子设备
TWI585667B (zh) 基於情境之動畫庫
CA2881145C (en) Fulfillment of applications to devices
KR102603609B1 (ko) 가상적 객체들을 선택하기 위한 방법, 장치, 단말, 및 저장 매체
CN111330272A (zh) 虚拟对象的控制方法、装置、终端及存储介质
CN113209616A (zh) 虚拟场景中的对象标记方法、装置、终端以及存储介质
WO2023142354A1 (zh) 目标锁定方法、装置、电子设备及存储介质
CN106536004A (zh) 增强的游戏平台
Seidelin HTML5 games: creating fun with HTML5, CSS3 and WebGL
CN111861539A (zh) 资源处理方法、装置、电子设备和存储介质
CN107066180B (zh) 一种基于vr操作的任务生成方法及其系统
CN115212556A (zh) 与虚拟对象交互的方法、装置、设备和存储介质
CN112451967A (zh) 基于3d屏幕交互的游戏交互方法、装置和计算机设备
EP4378552A1 (en) Method and apparatus for interaction in virtual environment
CN112569594B (zh) 游戏模型信息展示方法、装置、电子设备及可读存储介质
Schnitzer Real-time scheduling for 3d rendering on automotive embedded systems
Halpern et al. Assembling the Nuts and Bolts
Thorn et al. Weapons

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