CN109939442B - 应用角色位置异常识别方法、装置、电子设备及存储介质 - Google Patents
应用角色位置异常识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN109939442B CN109939442B CN201910199228.0A CN201910199228A CN109939442B CN 109939442 B CN109939442 B CN 109939442B CN 201910199228 A CN201910199228 A CN 201910199228A CN 109939442 B CN109939442 B CN 109939442B
- Authority
- CN
- China
- Prior art keywords
- scene
- target application
- target
- position information
- application role
- 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
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种应用角色位置异常识别方法、装置、电子设备及存储介质,属于互联网技术领。本发明通过第一虚拟场景来模拟该目标应用在第一设备上显示的第二虚拟场景,并根据目标应用角色在第二虚拟场景中的第一位置信息,和该第一虚拟场景中至少一个场景对象,确定该至少一个目标应用角色的位置识别结果。由于基于各个场景对象,在第一虚拟场景中对目标应用角色进行位置识别。因此,能够准确的基于场景对象识别出该目标应用角色的位置是否异常,大大提高了应用角色位置异常识别的准确性。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种应用角色位置异常识别方法、装置、电子设备及存储介质。
背景技术
在一些游戏应用中,通常采用应用角色代表用户在游戏应用的虚拟场景中进行活动。例如,用户可以控制应用角色在虚拟场景中跑步、跳跃等。在虚拟场景中,应用角色需在游戏规则限制的范围内进行活动。然而,某些恶意用户采取作弊手段,使得应用角色的活动范围超出游戏规则限制的范围,例如,遁入地下、穿越墙壁、停驻在高空等。这会严重影响游戏应用的口碑。本领域中,通常需要对应用角色进行识别,以避免作弊。
相关技术中,应用角色位置识别过程可以为:服务器获取应用角色的坐标阈值,该坐标阈值用于指示该应用角色在该位置所能到达的目标范围。例如,两个应用角色作战场景中,某一应用角色的坐标阈值可以包括该应用角色的最大高度坐标和最低高度坐标。该服务器根据该应用角色的位置和该坐标阈值,判断该应用角色是否位于该目标范围内,如果该应用角色在该目标范围内,则该应用角色的位置正确,也即是符合游戏规则,该用户没有作弊,为非恶意用户,否则,该应用角色的位置异常,该用户为恶意用户。
上述过程实际上是通过坐标阈值实现位置识别。然而,虚拟场景中往往还包括建筑物、树木、山丘等,而且也可能存在地形变化较大的场景区域。如果应用角色面前有房屋,上述识别方法则不能识别应用角色是否位于房屋的墙壁,从而导致上述应用角色位置异常识别的准确性较低。
发明内容
本发明实施例提供了一种应用角色位置异常识别方法、装置、电子设备及存储介质,能够解决相关技术中应用角色位置异常识别的准确性较低的问题。
所述技术方案如下:
一方面,提供了一种应用角色位置异常识别方法,所述方法包括:
获取目标应用的第一虚拟场景,所述第一虚拟场景用于模拟所述目标应用在第一设备上显示的第二虚拟场景;
获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息;
根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象,确定所述至少一个目标应用角色的位置识别结果,所述位置识别结果用于指示所述至少一个目标应用角色的位置是否异常。
在一种可能的实现方式中,所述根据所述至少一个场景对象的第二位置信息,将所述至少一个场景对象添加至所述目标虚拟空间中,得到所述目标应用的第一虚拟场景包括:
在所述目标虚拟空间中,根据所述至少一个场景对象对应的多个顶点,将所述多个顶点按照每个顶点对应序号所指示的连线顺序进行连接,得到所述至少一个场景对象,所述多个顶点用于指示场景对象在所述第一虚拟场景的位置、形状和方向;
在所述物理引擎组件中设置所述至少一个场景对象的材质信息。
在一种可能的实现方式中,所述根据所述至少一个场景对象的第二位置信息,将所述至少一个场景对象添加至所述目标虚拟空间中,得到所述目标应用的第一虚拟场景包括:
当所述第一虚拟场景与所述第二虚拟场景大小不同时,按照所述第一虚拟场景相对于所述第二虚拟场景缩放系数,对所述至少一个场景对象的第二位置信息进行缩放;
基于缩放后的第二位置信息,将所述至少一个场景对象添加至所述目标虚拟空间中,得到所述第一虚拟场景。
在一种可能的实现方式中,所述根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象的第三位置信息,基于目标识别策略,对所述至少一个目标应用角色进行位置异常识别包括:
基于所述至少一个目标应用角色的多个连续采集时间的多个第一位置信息,确定所述目标应用角色的起点坐标和射线向量;
根据所述起点坐标、所述射线向量和所述目标应用角色的周围至少一个场景对象的第三位置信息,识别所述至少一个目标应用角色与所述周围至少一个场景对象是否发生碰撞;
当所述至少一个目标应用角色与所述周围至少一个场景对象发生碰撞时,确定所述至少一个目标应用角色的位置与任一个场景对象的位置重叠。
在一种可能的实现方式中,所述根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象的第三位置信息,基于目标识别策略,对所述至少一个目标应用角色进行位置异常识别包括:
根据所述至少一个目标应用角色的第一位置信息,生成所述至少一个目标应用角色对应在所述第一虚拟场景的三维立体对象;
根据所述三维立体对象和所述至少一个场景对象的第三位置信息,识别所述至少一个场景对象是否与所述三维立体对象重叠;
当所述至少一个场景对象与所述三维立体对象重叠时,确定所述至少一个目标应用角色的位置与任一个场景对象的位置重叠。
在一种可能的实现方式中,所述根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象,确定所述至少一个目标应用角色的位置识别结果包括:
确定所述至少一个场景对象在所述第一虚拟场景中的第三位置信息;
从所述至少一个目标应用角色的第一位置信息中,提取所述目标应用角色的关联对象的位置信息;
根据所述关联对象的位置信息和所述至少一个场景对象的第三位置信息,对所述关联对象进行位置异常识别,当所述关联对象的位置与任一个场景对象的位置重叠时,确定所述至少一个目标应用角色的位置异常。
另一方面,提供了一种应用角色位置异常识别方法,所述方法包括:
基于目标应用的物理引擎组件,获取所述目标应用的至少一个场景对象的第二位置信息,所述第二位置信息用于指示场景对象在所述目标应用在第一设备上显示的第二虚拟场景中的位置,所述物理引擎组件用于指示所述第二位置信息的存储地址;
根据目标格式模型,将所述至少一个场景对象的第二位置信息存储至目标资源文件中;
向第二设备发送所述目标资源文件,所述目标资源文件用于指示在第二设备上建立第一虚拟场景,基于所述第一虚拟场景对目标应用角色的位置进行识别。
另一方面,提供了一种应用角色位置异常识别装置,所述装置包括:
获取模块,用于获取目标应用的第一虚拟场景,所述第一虚拟场景用于模拟所述目标应用在第一设备上显示的第二虚拟场景;
所述获取模块,还用于获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息;
确定模块,用于根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象,确定所述至少一个目标应用角色的位置识别结果,所述位置识别结果用于指示所述至少一个目标应用角色的位置是否异常。
另一方面,提供了一种应用角色位置异常识别装置,所述装置包括:
获取模块,用于基于目标应用的物理引擎组件,获取所述目标应用的至少一个场景对象的第二位置信息,所述第二位置信息用于指示场景对象在所述目标应用在第一设备上显示的第二虚拟场景中的位置,所述物理引擎组件用于指示所述第二位置信息的存储地址;
存储模块,用于根据目标格式模型,将所述至少一个场景对象的第二位置信息存储至目标资源文件中;
发送模块,用于向第二设备发送所述目标资源文件,所述目标资源文件用于指示在第二设备上建立第一虚拟场景,基于所述第一虚拟场景对目标应用角色的位置进行识别。
另一方面,提供了一种电子设备,所述电子设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条指令,所述至少一条指令由所述一个或多个处理器加载并执行以实现如上述的应用角色位置异常识别方法所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上述的应用角色位置异常识别方法所执行的操作。
本发明实施例提供的技术方案带来的有益效果至少可以包括:
通过第一虚拟场景来模拟该目标应用在第一设备上显示的第二虚拟场景,并根据目标应用角色在第二虚拟场景中的第一位置信息,和该第一虚拟场景中至少一个场景对象,确定该至少一个目标应用角色的位置识别结果。由于基于各个场景对象,在第一虚拟场景中对目标应用角色进行识别。因此,能够准确的基于场景对象识别出该目标应用角色的位置是否异常,大大提高了应用角色位置异常识别的准确性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种应用角色位置异常识别方法的实施环境的示意图;
图2是本发明实施例提供的一种应用角色位置异常识别方法的流程图;
图3是本发明实施例提供的一种虚拟场景示意图;
图4是本发明实施例提供的一种虚拟场景示意图;
图5是本发明实施例提供的一种虚拟场景示意图;
图6是本发明实施例提供的一种虚拟场景示意图;
图7是本发明实施例提供的一种通知消息显示界面示意图;
图8是本发明实施例提供的一种通知消息显示界面示意图;
图9是本发明实施例提供的一种应用角色位置异常识别的架构图;
图10是本发明实施例提供的一种应用角色位置异常识别的流程图;
图11是本发明实施例提供的一种应用角色位置异常识别方法的流程图;
图12是本发明实施例提供的一种数据选择界面示意图;
图13是本发明实施例提供的一种场景对象示意图;
图14是本发明实施例提供的一种场景对象示意图;
图15是本发明实施例提供的一种应用角色位置异常识别装置的结构示意图;
图16是本发明实施例提供的一种应用角色位置异常识别装置的结构示意图;
图17是本发明实施例提供的一种终端的结构示意图;
图18是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的一种应用角色位置异常识别方法的实施环境的示意图,参见图1,该实施环境包括:服务器101和终端102。该服务器101上安装有识别应用,该终端102上安装有目标应用,该服务器101可以基于该识别应用,与该终端102进行数据交互。
该目标应用中包括虚拟场景,该虚拟场景中包括目标应用角色和至少一个场景对象,该目标应用角色用于代表用户在该虚拟场景中的虚拟的形象,或者用于代表在虚拟场景中与用户有关联关系的虚拟对象的形象,例如,该用户在虚拟场景中拥有的道具、虚拟宠物,或者搭载的载具等。用户可以控制该目标用角色在该虚拟场景中进行跑步、跳跃等一系列行为。该识别应用用于对该目标应用角色的位置进行识别,以确定该目标应用角色的位置是否异常。其中,该场景对象用于表示该虚拟场景所模拟的虚拟环境中的环境对象,例如,该场景对象可以为树木、房屋、山丘等。该目标应用可以为游戏应用,在虚拟场景中,该目标应用角色的位置需要在符合游戏规则,例如,目标应用角色的位置位于地面以下时,则位置异常。
本发明实施例中,该服务器101可以基于该目标应用角色的位置信息和该至少一个场景对象,对该目标应用角色进行识别,以判断该目标应用角色的位置是否发生异常。该服务器101可以从该终端102中获取该至少一个场景对象的位置信息。该终端102上可以安装有数据获取应用,该终端102可以通过该数据获取应用,基于该目标应用的物理引擎组件,获取该至少一个场景对象的位置信息,并将该至少一个场景对象的位置信息发送至服务器101。该服务器101可以基于该至少一个场景对象的位置信息,在服务器101中创建该目标应用的虚拟场景,在该虚拟场景中,对该目标应用角色进行位置异常识别。
其中,该实施环境还可以包括目标设备,该目标设备可以为服务器或终端,该目标设备用于提供该目标应用角色的位置信息。该位置信息用于指示目标应用角色在虚拟场景的位置,该位置信息可以为该目标应用角色在虚拟场景的位置坐标。在一种可能的实施场景中,该目标设备可以为终端,该终端运行该目标应用过程中,用户可以控制该目标应用角色在该虚拟场景中进行游戏,该服务器101从该终端中获取该目标应用角色的位置信息。在另一种可能的实施场景中,该目标设备可以为目标应用的后台服务器,该服务器101从该后台服务器中获取该目标应用角色的位置信息,其中,该服务器101可以从该后台服务器中获取该目标应用角色的历史行为记录,从该历史行为记录中提取该目标应用角色的位置信息,该历史行为记录用于指示该目标应用角色在该虚拟场景中的历史行为。或者,该后台服务器从终端中实时获取目标应用角色的位置信息,并将该目标应用角色的位置信息转发至该服务器101。
需要说明的是,该虚拟场景可以用于模拟一个虚拟空间,该虚拟空间可以是一个开放空间,该虚拟场景可以用于模拟现实中的真实环境,例如,该虚拟场景中可以包括天空、陆地、海洋等,该陆地可以包括沙漠、山丘、森林、房屋、石头等环境元素。该目标应用角色的具体形态可以是任一种形态,例如,人、动物等,本发明对此不限定。用户可以控制目标应用角色在该虚拟场景中进行移动,以射击类游戏为例,用户可以控制目标应用角色在该虚拟场景的天空中自由下落、滑翔或者打开降落伞进行下落等,在陆地上中跑动、跳动、爬行、弯腰前行等,也可以控制角色对象在海洋中游泳、漂浮或者下潜等,当然,用户也可以控制角色对象乘坐载具在该虚拟场景中进行移动,在此仅以上述场景进行举例说明,本发明实施例对此不作具体限定。
需要说明的是,该识别应用可以为一个独立的应用程序,或者为安装在独立的应用程序中的插件等。该服务器101可以为服务器集群,也可以为单个设备。该终端102可以为手机终端、PAD(Portable Android Device,平板电脑)终端或者电脑终端等任一安装该游戏应用的设备。本发明实施例对此不做具体限定。
图2是本发明实施例提供的一种应用角色位置异常识别方法的流程图。该方法可以应用在第二设备上,该第二设备可以为服务器,参见图2,该方法包括:
201、服务器基于目标应用的物理引擎组件,获取该第二虚拟场景中至少一个场景对象的第二位置信息。
其中,该第二虚拟场景为该目标应用在第一设备上显示的虚拟场景。该物理引擎组件是指该目标应用的物理引擎层的组件,该物理引擎组件用于指示至少一个场景对象的第二位置信息的存储地址。该第二位置信息是指该至少一个场景对象在该第二虚拟场景中的位置。本步骤中,该服务器可以根据该目标应用的物理引擎组件所指示的存储地址,从该存储地址对应的存储空间中,获取该至少一个场景对象的第二位置信息。
其中,该服务器可以获取目标格式模型的目标资源文件,该目标格式模型为该服务器能够识别的格式,该目标资源文件中存储有该至少一个场景对象的第二位置信息。当然,该服务器可以从安装有该目标应用的第一设备上,获取该目标资源文件。则本步骤可以为:该服务器根据该目标应用的物理引擎组件所指示的存储地址,从安装该目标应用的第一设备中获取目标资源文件;该服务器根据目标格式模型,从该目标资源文件中解析出该至少一个场景对象的第二位置信息。其中,该存储地址为该第一设备上存储该至少一个场景对象的第二位置信息的地址。
需要说明的是,该服务器可以向该第一设备发送获取指令,该第一设备基于该获取指令,获取该目标资源文件,并向服务器发送该目标资源文件,该获取指令用于指示获取该目标应用的至少一个场景对象的第二位置信息。其中,该第一设备获取该目标资源文件的过程,在下一个方法实施例的文件获取方法所包括的步骤1101-1103中进行主要介绍,本发明实施例以服务器侧为主,对由服务器所执行的步骤进行介绍。
其中,该第二位置信息是指该第二虚拟场景中除应用角色以外的环境对象的位置信息,例如,第二虚拟场景中树木、房屋等在第二虚拟场景中的位置信息。场景对象的第二位置信息可以为该场景对象的重心所在的位置。在一种可能的实施方式中,该第二位置信息可以采用位置坐标来表示,该位置坐标可以为该场景对象在该第二虚拟场景的三维坐标系中的坐标。其中,该场景对象的位置坐标可以为该场景对象的重心在该三维坐标系中的坐标点。
在一种可能的实施方式中,该目标资源文件还包括该至少一个场景对象的形状、方向或材质信息。其中,该形状是指场景对象在该第二虚拟场景中所呈现的外形轮廓,该方向是指该场景对象在该第二虚拟场景中的朝向。该材质信息是指该场景对象所表示的虚拟对象的材料、质地等方面的物理属性。例如,该材质信息可以包括该场景对象的表面的摩擦系数、弹性系数等。则该服务器还可以根据该目标格式模型,从该目标资源文件中获取该至少一个场景对象的形状、方向和材质信息。在该目标资源文件是基于构成场景对象的点、线、面等元素,对该场景对象的形状、方向进行存储,该服务器后续可以基于点、线、面元素,将场景对象重现。对于每个场景对象,该目标资源文件中,可以采用顶点、序号来表示构成该场景对象的点、线、面元素。其中,该场景对象对应包括多个顶点,每个顶点对应一个序号,该序号用于指示该序号对应的顶点在该场景对象包括的多个顶点中的连线顺序。则本步骤中,对于每个场景对象,该服务器可以基于该目标资源文件的目标格式模型,解析出该目标资源文件中场景对象的第二位置信息、形状、方向和/或材质信息,将该第二位置信息、形状、方向和/或材质信息加载到该服务器的内存中。其中,该目标资源文件中的数据可以包括用于表示该场景对象的位置、形状、方向的顶点和序号。则该服务器将表示场景对象的位置、形状、方向的顶点和序号,加载到内存中。
在一种可能的实施方式中,该服务器上安装有识别应用,该识别应用可以用于对多个应用中的目标应用角色进行位置识别。在一种可能的场景中,在该识别应用中,用户可以基于该多个应用中的目标应用,触发位置识别指令。该服务器基于用户触发的位置识别指令,对该目标应用的目标应用角色进行位置识别,则本步骤还可以为:当接收到位置识别指令时,服务器基于目标应用的物理引擎组件,获取该第二虚拟场景中至少一个场景对象的第二位置信息,该位置识别指令用于指示对该目标应用的目标应用角色进行位置识别。其中,该服务器可以在识别应用的应用界面中,显示该多个应用的应用标识,当该服务器位置识别到该多个应用中目标应用的应用标识被触发时,接收该位置识别指令。当然,该位置识别指令的触发方式还可以为基于目标语音进行触发,本发明实施例对此不做具体限定。
其中,该目标格式模型可以为obj格式模型,该obj格式模型可以被该服务器所识别,并且,该obj格式模型还可以在多种3D软件的数据读取逻辑所识别,具备很高的通用性;该服务器上针对该obj格式模型,配置有该obj格式模型对应的数据读取逻辑,采用该obj格式模型封装文件并传输,使得该服务器可以迅速从该目标资源文件中读取该至少一个场景对象的第二位置信息。
相比现有技术中,由于多种游戏应用的资源文件的格式各不相同,服务器需要分别针对每种格式配置多种数据读取逻辑,从而导致对象位置异常识别的效率较低、通用性也较差。而本发明实施例中,由于基于物理引擎组件获取到第二位置信息时,先将该第二位置信息按照obj格式模型封装为目标资源文件,从而该服务器仅需基于obj格式模型,设置一种数据读取逻辑即可,本发明实施例的应用角色位置异常识别方法可以适用于资源文件格式不同的多种游戏应用,提高了应用角色位置异常识别方法的通用性。并且,无需针对每种游戏应用设置一种数据读取逻辑,便可以同时对多种游戏应用的目标应用角色进行位置异常识别,从而大大提高了对象位置异常识别的效率。
202、服务器根据该至少一个场景对象的第二位置信息,创建该目标应用的第一虚拟场景。
其中,该第一虚拟场景用于模拟该目标应用在第一设备上显示的第二虚拟场景。该服务器按照该至少一个场景对象的第二位置信息,将至少一个场景对象组成该目标应用的第一虚拟场景。
本步骤中,该服务器上安装有识别应用,该服务器可以基于该识别应用对目标应用的目标应用角色进行位置异常识别。其中,该服务器可以在该服务器的物理引擎组件中创建目标虚拟空间。该服务器根据该至少一个场景对象的第二位置信息,将该至少一个场景对象添加至该目标虚拟空间中,得到该目标应用的第一虚拟场景。其中,该服务器可以在该目标虚拟空间中建立三维坐标系,对于每个场景对象,该服务器将该场景对象添加至目标虚拟空间中的过程可以为:该服务器可以根据该场景对象的位置坐标,将该场景对象添加至该位置坐标在该目标虚拟空间的对应位置处。该服务器将多个场景对象按照该添加过程,一一添加至该目标虚拟空间中,从而在该服务器上将该第二虚拟场景重现为第一虚拟场景。
其中,该第一虚拟场景可以与该第二虚拟场景大小相同或者不同,当该第一虚拟场景与该第二虚拟场景大小不同时,该服务器则按照该第一虚拟场景相对于该第二虚拟场景缩放系数,对该场景对象在该第二虚拟场景中的位置坐标进行缩放,再基于缩放后的位置坐标,将该场景对象添加至该目标虚拟空间中,得到缩放后的该第一虚拟场景。当然,该服务器也可以按照该第二虚拟场景的原始大小,在该服务器上创建与该第二虚拟场景大小相同的第一虚拟场景。本发明实施例对此不做具体限定。
当目标资源文件中还包括场景对象的形状、方向和材质信息时,则该服务器还根据该场景对象的形状、方向和材质信息,分别确定该场景对象在该目标虚拟空间中的外形轮廓、该场景对象的方向以及该场景对象的材质。其中,该服务器将该场景对象添加至第一虚拟场景的过程可以包括:在目标虚拟空间中,该服务器可以根据该至少一个场景对象对应的多个顶点,将该多个顶点按照每个顶点对应序号所指示的连线顺序进行连接,得到至少一个场景对象,该多个顶点用于指示场景对象在该第一虚拟场景的位置、形状和方向;该服务器在该物理引擎组件中设置该至少一个场景对象的材质信息。其中,服务器可以根据用于表示该场景对象的位置、形状和方向的各个顶点,将各个顶点按照该顶点对应序号所指示的连线顺序进行连接,形成点、线、面元素,基于该点、线、面元素,构成该场景对象。并且,该服务器在该物理引擎组件中设置该场景对象的材质信息。其中,该顶点可以为该目标虚拟场景中的三维坐标点。该服务器按照上述添加过程,确定每个场景对象中在该第一虚拟场景中的具体形态,从位置、形状、方向、材质等多个角度,在该第一虚拟场景中唯一确定一个场景对象。
对于目标虚拟空间的创建过程,该服务器可以在该服务器的物理引擎组件中,创建一个三维虚拟空间,并设置该三维虚拟空间的物理参数,也即是对该三维虚拟空间进行初始化处理,使得该三维虚拟空间可以用来模拟真实的物理空间,从而得到该目标虚拟空间。进一步的,该服务器还可以在该目标虚拟空间中建立三维坐标系。其中,该物理参数可以基于需要进行设置,本发明实施例对此不做具体限定。例如,该物理参数可以包括重力加速度,该服务器可以设置该目标虚拟空间的重力加速度为9.8m/s2。当然,该物理参数还可以包括空气阻力、摩擦系数等等。
其中,该物理引擎组件可以为Physx物理引擎,在该Physx物理引擎中该服务器可以基于该顶点和序号,以三角网格为单位,创建各个场景对象,并将各个场景对象载入到该Physx物理引擎中建立的目标虚拟空间中,得到该第一虚拟场景。
如图3所示,服务器在该物理引擎组件中建立该第一虚拟场景,该第一虚拟场景可以为虚拟草原场景,如图3所示为部分虚拟草原场景的场景对象,该部分虚拟草原场景中可以包括树、房屋等场景对象。如图4所示,图4为该第一虚拟场景的部分虚拟草原场景的实际显示效果示意图,从图4中可以更清晰的展示出该第一虚拟场景的实际场景画面。
需要说明的是,上述步骤201-202实际上是步骤“服务器获取目标应用的第一虚拟场景”的一种实现方式,上述步骤201-202是先通过目标应用的物理引擎组件所指示的存储空间,获取场景对象的第二位置信息,再基于场景对象的第二位置信息,创建该第一虚拟场景。在另一种可能的实施方式中,该服务器还可以事先获取并存储有该至少一个场景对象的第二位置信息,则该服务器直接从本地存储空间中获取该至少一个场景对象的第二位置信息,根据该至少一个场景对象的位置信息,创建该第一虚拟场景。当然,上述服务器获取目标应用的第一虚拟场景的步骤,还可以包括其他实施方式,本发明实施例对此不做具体限定。
203、服务器获取至少一个目标应用角色在该第二虚拟场景中的第一位置信息。
该目标应用的用户可以控制该目标应用角色,在该目标应用的第一设备上所显示的第二虚拟场景中执行多种行为。该服务器可以从存储有目标应用角色的第一位置信息的目标设备上,获取至少一个虚拟用户对象在该第二虚拟场景中的第一位置信息。
其中,该服务器可以实时获取该第一位置信息,或者,该服务器还可以从目标应用角色的历史行为记录中,获取该第一位置信息。相应的,本步骤可以通过以下两种方式实现。
第一种方式、该服务器接收第三设备发送的该至少一个目标应用角色的第一位置信息。
其中,该第三设备为该至少一个目标应用角色对应用户所在的终端,或者该目标应用的后台服务器。该服务器可以在目标应用的用户实时游戏的过程中,实时对该目标应用角色进行位置异常识别。
该第一位置信息可以包括该目标应用角色的该第二虚拟场景中的位置。其中,该目标应用角色的位置可以为:该目标应用角色的重心在第二虚拟场景的位置坐标,则该第三设备实时获取目标应用角色的在该第二虚拟场景中的位置坐标,并向该服务器发送该位置坐标。该服务器接收该第三设备发送的该目标应用角色的位置坐标。其中,该位置坐标可以包括该目标应用角色的重心坐标。
在一种可能的实施方式中,该第一位置信息还可以包括该目标应用角色的关联对象在该第二虚拟场景中的位置。则本步骤可以为:该服务器接收第三设备发送的至少一个目标应用角色的第一位置信息。该服务器根据该第一位置信息,获取该目标应用角色在该第二虚拟场景中的位置,或者,该服务器根据该第一位置信息,获取该目标应用角色以及该目标应用角色的关联对象在该第二虚拟场景中的位置。
其中,该关联对象是指位置、行为逻辑等方面与该目标应用角色具备关联关系的对象。本发明实施例中,该关联对象可以包括但不限于:该目标应用角色的自身部位、该目标应用角色的位置关联对象或该目标应用角色的行为显示对象等。其中,该目标应用角色的自身部位可以包括该目标应用角色的肢体部位或者肢体部位上虚拟的装饰物品等。该目标应用角色的位置关联对象可以包括但不限于:该目标应用角色搭载的虚拟载具、虚拟背包等;例如,该虚拟武器可以为虚拟刀具等;该虚拟载具可以为虚拟车辆、虚拟降落伞、虚拟滑板等。该目标应用角色的行为显示对象可以包括由目标应用角色的目标行为所触发显示的虚拟对象。例如,目标应用角色发射的虚拟子弹或该虚拟子弹射中的目标对象,又如,该目标应用角色投掷虚拟***或投掷虚拟***时被投区域内所发生的***对象;再如,目标应用角色使用虚拟望远镜时所能看到的观测对象等。另外,该目标应用角色的关联对象的位置,也可以采用位置坐标来表示,该服务器获取该关联对象的位置的过程,与上述获取虚拟对象的位置的过程同理,此处不再一一赘述。
第二种方式、服务器接收第四设备发送的该至少一个目标应用角色的历史行为记录,从该历史行为记录中获取该至少一个目标应用角色的第一位置信息。
其中,该历史行为记录用于指示该至少一个目标应用角色在该第二虚拟场景的历史行为,该第四设备为该目标应用的后台服务器。
本步骤中,该服务器可以向第四设备发送获取请求,该获取请求用于请求获取该目标应用的至少一个目标应用角色的历史行为记录。该获取请求可以携带该目标应用的应用标识。该第四设备接收该获取请求,并基于该获取请求,向该服务器发送该至少一个目标应用角色的历史行为记录,该服务器接收该至少一个目标应用角色的历史行为记录。
其中,该历史行为记录可以为该目标应用的回放数据,该回放数据包括目标应用角色在进行历史行为过程中,该第二虚拟场景中的第一位置信息,该服务器可以从该历史行为记录中提取该目标应用角色的第一位置信息。
在一种可能的实施方式中,该获取请求还可以用于请求获取满足目标条件的至少一个目标应用角色的历史行为记录。该获取请求还可以携带该目标条件。该目标条件可以包括但不限于:该至少一个目标应用角色在目标时段的历史行为记录,或者属于目标对象类型的至少一个场景独享的历史行为记录等。该目标时段、目标对象类型可以基于需要进行设置,本发明实施例对此不做具体限定。例如,该目标时段可以为每天的12点至24点、20点至22点等。该目标对象类型可以为游戏等级超过目标等级的高级玩家类型、或者游戏频次超过目标频次的骨灰级游戏玩家类型等。
当然,该服务器还可以获取多个目标应用角色的历史行为记录,基于该目标条件,从该多个目标应用角色的历史行为记录中,提取满足目标条件的至少一个目标应用角色的历史行为记录,从满足目标条件的至少一个目标应用角色的历史行为记录中获取该至少一个目标应用角色的第一位置信息。
该第一位置信息至少包括该目标应用角色在第二虚拟场景中的位置,另外,该第一位置信息还可以包括该目标应用角色的关联对象在该第二虚拟场景中的位置。该服务器获取该至少一个目标应用角色的第一位置信息的过程,为与上述第一种方式中,获取第一位置信息同理的过程,此处不再赘述。
需要说明的是,在上述第一种方式中,该服务器也可以基于目标条件,从第三设备中获取满足目标条件的至少一个目标应用角色的第一位置信息。该服务器从第三设备中获取满足目标条件的至少一个目标应用角色的第一位置信息的过程,与上述第二种方式的过程同理,此处不再一一赘述。
在一种可能的实施方式中,该服务器也可以从第三设备或第四设备中获取至少一个目标应用角色的形状、方向等,以第三设备为例,则该第三设备获取该至少一个目标应用角色的形状和方向,并向该服务器发送该至少一个目标应用角色的形状和方向。其中,该目标应用角色的形状用于表示该目标应用角色的外形轮廓,该方向用于表示该目标应用角色的朝向。当然,该服务器还可以从第三设备中获取该至少一个目标应用角色的生命力相关信息,例如,该目标应用角色的生命力指数、血量、战斗等级等信息。本发明实施例对此不做具体限定。
在一种可能的实施方式中,该第三设备或第四设备还可以向该服务器发送该目标应用的应用标识,该服务器接收第三设备或第四设备发送的应用标识,基于该应用标识,确定目标应用角色对应的目标应用,后续基于该目标应用的第一虚拟场景,对该目标应用角色进行位置异常识别。
204、服务器根据该至少一个目标应用角色的第一位置信息和该第一虚拟场景中至少一个场景对象,确定该至少一个目标应用角色的位置识别结果。
其中,该位置识别结果用于指示该至少一个目标应用角色的位置是否异常,该位置是否异常可以基于该目标应用的目标规则进行判定,该目标规则是指该目标应用中用户约束目标应用角色的行为的规则。例如,该目标规则可以包括:目标应用角色在第二虚拟场景中碰到障碍物时需绕行、目标应用角色仅能在第二虚拟场景的地面活动等等。其中,该服务器可以基于场景对象在该第一虚拟场景的位置,对该目标应用角色进行位置异常识别。本步骤中,该服务器可以确定该至少一个场景对象在该第一虚拟场景中的第三位置信息;该服务器根据该至少一个目标应用角色的第一位置信息和该至少一个场景对象第三位置信息,对该至少一个目标应用角色进行位置异常识别;当该至少一个目标应用角色的位置与任一个场景对象的位置重叠时,确定该至少一个目标应用角色的位置异常。
在一种可能的实施方式中,该服务器可以基于该至少一个目标应用角色的第一位置信息,在该第一虚拟场景中创建一个模拟角色,该模拟角色用于模拟在第二虚拟场景中的目标应用角色的位置。该服务器还可以基于该至少一个目标应用角色的形状、方向和生命力相关信息,在第一虚拟场景中重建出一个特征与该目标应用角色相吻合的模拟角色,该服务器根据该模拟角色在第一虚拟场景的位置和至少一个场景对象在第一虚拟场景的位置,对该目标应用角色进行位置异常识别。
在另一种可能的实施方式中,该服务器还可以直接基于目标应用角色的第一位置信息,对该目标应用角色进行为之异常识别。其中,该服务器可以基于该第一虚拟场景中所有场景对象的位置,对目标应用角色进行位置异常识别。或者,该服务器可以选取该目标应用角色周围的场景对象,对目标应用角色进行位置异常识别。该服务器根据该目标应用角色的第一位置信息,获取该目标应用角色的目标场景范围内的至少一个场景对象的第三位置信息,根据该目标场景范围内的至少一个场景对象的第三位置信息和该目标应用角色的第一位置信息,对该目标应用角色进行位置异常识别。该目标场景范围可以为距离该目标应用角色小于阈值距离的范围。当然,该目标场景范围可以基于需要进行设置,例如,该目标范围可以为距离该目标应用角色小于30米的圆形场景区域。
在一种可能的实施方式中,当该服务器还确定场景对象在该第一虚拟场景中的形状、方向和材质信息时,该服务器还可以根据该场景对象的第三位置信息、形状、方向和材质信息和目标应用角色的第一位置信息,对该目标应用角色进行位置异常识别,当该目标应用角色的位置与该场景对象所占空间发生重叠时,该服务器确定将该目标应用角色目标应用角色的位置异常。当该目标应用角色的位置与该场景对象所占空间不重叠时,确定将该目标应用角色目标应用角色的位置正常。
本发明实施例中,该服务器的物理引擎组件具备识别功能,该物理引擎组件中可以事先配置有目标识别策略,该服务器可以基于该目标识别策略,对目标应用角色进行位置异常识别,以实现该识别功能。该过程可以为:该服务器根据该至少一个目标应用角色的第一位置信息和该至少一个场景对象在该第一虚拟场景中的第三位置信息,基于该第一设备的物理引擎组件的目标识别策略,对该至少一个目标应用角色进行位置异常识别。其中,该目标识别策略可以包括但不限于:目标识别算法、识别周期等。则该服务器根据目标应用角色的第一位置信息和场景对象的第三位置信息,按照该识别周期,通过该目标识别算法,对目标应用角色进行位置异常识别。
其中,该目标识别算法可以包括碰撞查询识别算法,例如,射线碰撞查询算法和覆盖查询算法。射线碰撞查询算法是指通过定义起点坐标和射线向量对目标应用角色进行识别。覆盖(overlap)查询算法是指通过基于场景对象的形状识别目标应用角色与场景对象之间是否相互覆盖,来对目标应用角色进行识别。以射线碰撞查询算法为例,对于射线碰撞查询算法,本步骤可以为:该服务器基于该至少一个目标应用角色的多个连续采集时间的多个第一位置信息,确定该目标应用角色的起点坐标和射线向量;该服务器根据该起点坐标、该射线向量和该目标应用角色的周围至少一个场景对象的第三位置信息,识别该至少一个目标应用角色与该周围至少一个场景对象是否发生碰撞;当该至少一个目标应用角色与该周围至少一个场景对象发生碰撞时,该服务器确定该至少一个目标应用角色的位置与任一个场景对象的位置重叠。其中,该服务器可以基于该目标应用角色在连续时间段内的多个第一位置信息,每个第一位置信息对应一个采集时间,该采集时间可以为该目标应用角色在该第一位置信息对应位置时的时间戳。如果该目标应用角色与第一虚拟场景中周围的场景对象发生碰撞,则确定该目标应用角色与该场景对象的位置重叠,该目标应用角色的位置异常。其中,该服务器可以根据该多个第一位置信息中采集时间最早的位置信息,确定该起点坐标,并按照采集时间的先后顺序,根据采集时间最早的第一位置信息以外多个第一位置信息,确定该射线向量。其中,该服务器可以将该多个第一位置信息对应的位置坐标相连接,建立该目标应用角色的射线向量。
当然,该服务器还可以定义回调函数,调用该目标识别算法,对该目标应用角色进行识别。在一种可能的场景中,服务器可以基于射线碰撞查询算法,基于目标应用角色的起点坐标和射线向量,识别该目标应用角色是否与虚拟场景中的地面、房屋的墙体或其他障碍物有碰撞。或者,该服务器还可以基于覆盖查询算法和射线碰撞查询对目标应用角色进行包围识别,也即是识别目标应用角色是否被周围的障碍物所包围,或者是否有重合部分。该过程可以为:该服务器根据该至少一个目标应用角色的第一位置信息,生成该至少一个目标应用角色对应在该第一虚拟场景的三维立体对象;该服务器根据该三维立体对象和该至少一个场景对象的第三位置信息,识别该至少一个场景对象是否与该三维立体对象重叠;当该至少一个场景对象与该三维立体对象重叠时,该服务器确定该至少一个目标应用角色的位置与任一个场景对象的位置重叠。其中,该三维立体对象用于代表该目标应用角色在第一虚拟场景中的形象,该三维立体对象可以为一个胶囊体,该服务器可以根据胶囊体生成算法和该第一位置信息,生成胶囊体。当然,该服务器还可以对目标应用角色进行分割,得到该目标应用角色的多个分割截面,并采用射线碰撞查询算法,基于目标应用角色的起点坐标和射线向量,判断每个分割截面与该场景对象是否碰撞,如果碰撞,则确定该分割截面在空间上对该目标应用角色有阻挡性。也即是,如果该目标应用角色在该场景对象的一侧,该目标应用角色不能透过该场景对象看到该场景对象的另一侧的物体,从而对该目标应用角色的可见性进行识别。
在一种可能的实施方式中,如果该服务器还获取该目标应用角色的关联对象的位置,也即是,第一位置信息中还包括目标应用角色的关联对象的位置,则该服务器还可以根据该目标应用角色的第一位置信息和该场景对象的第三位置信息,对该目标应用角色的关联对象进行识别,当该关联对象的位置与该场景位置对象重叠时,该服务器确定目标应用角色为恶意对象。在一种可能的场景中,以该关联对象为该目标应用角色所搭载的虚拟载具为例,当该虚拟载具与该场景对象重叠时,该服务器确定该目标应用角色为恶意对象。
如图5所示,由于重建了游戏的虚拟场景,本发明实施例在面对复杂模型时也有高准确度,例如,在可见性判定中,图5中AB两点位置中间有复杂模型,该复杂模型是一个复杂的球体对象,图5中AB两点之间的连线正好穿过模型的底部圆弧外侧,但没有穿过该球体对象,因此,AB连线是没有物体阻挡的。也即是,目标应用角色在A点时的视线可以正常穿过并到达B点位置处。由于该AB连线正好穿过球体底部圆弧外侧,相比相关技术中仅通过阈值而将该复杂对象模糊为方形的方式,相关技术中则会误判为AB连线穿过了复杂对象内部,而本发明实施例可以更准确的判断出AB连线未穿过球体对象,判断结果更符合实际场景。因此,尤其当虚拟场景中包括结构较为复杂的场景对象时,相比与现有技术中,由于仅基于坐标阈值进行判断导致准确率较低甚至几乎不能判定,而本发明实施例则可以准确的进行判定,能够大大提高角色位置异常识别的准确性。如图6所示,图6为图5中虚拟场景的实际界面示意图,从图6中可以更清晰的展示出该虚拟场景的实际场景画面。
进一步的,当该目标应用角色的位置异常时,该服务器可以向第四设备发送通知消息,以使该第四设备对该目标应用角色采取相应惩罚措施,或者该服务器还可以直接向该目标应用角色所在终端发送通知消息,并对该目标应用角色采取相应惩罚措施,例如,对该目标应用角色所在的游戏账号封号处理。如图7所示,该服务器可以将该目标应用角色所在终端发送通知消息,该终端可以显示该通知消息,该服务器可以直接将该目标应用角色提下线。如图8所示,图8为图7中通知消息的实际显示示意图,从图8中可以更清晰的展示出该通知消息的实际显示界面。
如图9所示,图9是本发明实施例的整体架构图,如图9所示,左侧表示目标应用的第一设备所在的第一设备,右侧表示服务器,该目标应用的第一设备包括游戏表现层、游戏引擎层和物理引擎层,该物理引擎层包括有该场景对象的对象数据的存储地址。该第一设备可以基于该存储地址,获取到场景对象的位置信息、形状、方向和/或材质信息等,并将位置信息、形状、方向和/或材质信息按照目标格式模型,封装为目标资源文件,将该目标资源文件发送至服务器中,该服务器基于该目标资源文件,在物理引擎组件中创建第一虚拟场景,用于模拟该目标应用在该第一设备上运行时,第一设备所显示的目标应用的第二虚拟场景。该服务器创建该第一虚拟场景后,就可以在该第一虚拟场景中对目标应用的各个目标应用角色进行位置异常识别,例如,识别目标应用角色是否遁地、是否被障碍物所包围、对该目标应用角色的可见性进行识别等。
图10是服务器进行对象位置异常识别的流程图,基于上述步骤201-204所描述的技术过程,本发明实施例以图10所示的流程为例的,对该对象位置异常识别过程进行介绍,如图10所示,该服务器基于物理引擎组件,初始化物理场景,并从目标资源文件中解析出场景对象的位置信息、形状、方向和材质信息等,并以场景对象为单位,将用于表示每个场景对象的位置信息、形状、方向的顶点和序号,读取到内存中,在内存中,根据顶点和序号,以三角网格为单位创建各个场景对象,并将各个场景对象载入到physx的初始化物理场景中,得到第一虚拟场景。然后,该服务器基于目标应用角色的位置坐标,在该第一虚拟场景中,对该目标应用角色进行位置异常识别,例如,进行射线碰撞查询识别或者覆盖查询识别等。
本发明实施例中,该服务器可以通过第一虚拟场景来模拟该目标应用在第一设备上显示的第二虚拟场景,并根据目标应用角色在第二虚拟场景中的第一位置信息,和该第一虚拟场景中至少一个场景对象,确定该至少一个目标应用角色的位置识别结果,由于基于各个场景对象,在第一虚拟场景中对目标应用角色进行位置异常识别,因此,能够准确的基于场景对象识别出该目标应用角色的位置是否异常,大大提高了角色位置异常识别的准确性。
图11是本发明实施例提供的一种应用角色位置异常识别方法的流程图,该方法可以应用在第一设备上,该第一设备可以为终端,参见图11,该方法包括:
1101、终端基于目标应用的物理引擎组件,获取该目标应用的至少一个场景对象的第二位置信息。
其中,该第二位置信息用于指示场景对象在该目标应用在第一设备上显示的第二虚拟场景中的位置,该物理引擎组件用于指示该第二位置信息的存储地址。该终端根据该目标应用的物理引擎组件所指示存储地址,从该存储地址对应的存储空间中,获取该至少一个场景对象的第二位置信息。
其中,该终端可以基于服务器的获取请求进行获取,该过程可以为:当该终端接收到第二设备的获取请求时,该终端根据该目标应用的物理引擎组件所指示的存储地址,从该存储地址中获取该第二虚拟场景的场景数据,该场景数据用于指示该第二虚拟场景包括的至少一个场景对象;该终端从该场景数据中提取该至少一个场景对象的第二位置信息。该获取请求用于请求获取该至少一个场景对象的第二位置信息。
在一种可能的实施方式中,该场景数据还包括场景对象的形状、方向和/或材质信息等。该终端还可以从该场景数据中提取该至少一个场景对象的第二位置信息、形状、方向和/或材质信息。
其中,该终端上可以安装有数据获取应用,该终端可以基于场景对象的对象类型,选择性的获取目标类型的场景对象的场景数据。当接收到服务器的获取请求时,该终端显示数据选择界面;该终端根据该数据选择界面中多个对象类型选项中被选中的目标类型,从该存储地址中获取该第二虚拟场景中目标场景数据,该目标场景数据用于指示该第二虚拟场景中的目标类型的场景对象。其中,该多个对象类型选项分别用于指示多个对象类型。多个对象类型可以包括静态物体和动态物体,其中,静态物体是指虚拟场景中静止的物体,例如房子、树木、石头之类的,动态物体可以包括虚拟场景运动的物体,例如车子、人等等。其中,该场景数据中可以包括场景对象的属性信息,该属性信息中包括指示场景对象的类型信息,该类型信息用于指示该对象类型为静态物体或动态物体。该终端可以根据该属性信息中的类型信息和被选中的目标类型,从该多个场景对象中确定出目标类型的场景对象。该场景数据可以为shape(形状)数据。
在一种可能的实施方式中,该终端还可以根据确定该场景对象的获取方式,该获取方式可以包括全量获取和分割获取。其中,该全量获取是指一次性获取该第二虚拟场景内包括的全部的场景对象的场景数据。分割获取是指先对该第二虚拟场景进行分割,分多次获取第二虚拟场景内场景对象的场景对象。例如,该终端可以将该第二虚拟场景划分为多个子虚拟场景,以每个子虚拟场景为单位,每次获取一个子虚拟场景内包括的场景对象的位置信息、方向、形状和/或材质信息等。
在一种可能的场景中,对于数据量较小的虚拟场景,该终端可以选择全量导出的方式获取场景数据,例如,小地图对应的虚拟场景;对于数据量较大的虚拟场景,该终端可以选择分割导出的方式获取场景数据,例如,大地图对应的虚拟场景。
需要说明的是,由于小地图所占内存空间较小,终端可以将小地图的场景数据一次性全部读取到内存中,而大地图是部分载入的。因此在选择全量导出时,终端可以直接将内存中的全部场景数据导出来,则能直接获取到全部范围的虚拟场景内的场景对象的场景数据。而对于大地图,需要将整个地图分割为多个区域,然后以每个区域为单位,逐个导出每个区域的内的场景对象的对象数据,分割数量由用户自己指定,但是需要用户移动到指定地图区域以保证该区域的地图已全部载入到内存。如图12所示,该数据选择界面如图12所示,用户可以选择以obj格式导出,也可以选择以Pxbin格式导出,Pxbin格式为第二设备可识别的另一种格式。用户可以选择获取静态物体或动态物体,并选择导出方式,其中,直接全量导出,即指全部获取该第二虚拟场景所有范围内的场景对象的位置信息、方向、形状和/或材质信息等。该数据选择界面还包括分割数量和指定导出区域,如果用户选择场景分割后导出,用户还可以进一步指定需要分割的数量,或者,选择分割后需要获取的目标场景区域。该分割数量可以为横向和纵向上对该第二虚拟场景分割的数量,例如,分割数量为3×4,则是将第二虚拟场景分割为12个子虚拟场景。
在另一种可能的实施方式中,该终端还可以将虚拟场景中的地形与虚拟场景中除地形以外的对象,分开获取。当接收到第一获取指令时,该终端获取该虚拟场景中地形数据,该第一获取指令用于指示获取该第二虚拟场景中地形对应的场景数据;当接收到第二获取指令时,该终端获取该虚拟场景中地形数据,该第二获取指令用于指示获取该第二虚拟场景中除地形以外的场景对象所对应的场景数据。需要说明的是,用户可以选择是否导出地形,终端会根据物理对象的数据类型判断对象是否是地形来进行过滤。由于终端可以先从内存中获取虚拟场景中的地形对应的场景数据,再获取该虚拟场景中除地形以外的其他场景对象的场景数据,后续获取其他场景对象的数据时,则不再需要继续获取地形对应的场景数据,从而能够大大节省数据获取时间。
在一种可能的实施方式中,该终端还可以仅获取该虚拟场景中一个或多个场景对象。当该终端接收到第三获取指令时,该终端根据该第三获取指令所指示的场景对象数量,确定分割数量,按照该分割数量,将该第二虚拟场景分割为多个自虚拟场景,按照分割导出的方式,获取目标数量个场景对象对应的场景数据。其中,该第三获取指令用于指示获取第二虚拟场景中目标数量个场景对象的场景数据。其中,该终端可以选择分割导出并且选择不获取地形,该分割数量可以基于需要获取的场景对象的目标数量进行设定。当然,如果终端需要获取单个的场景对象,该分割数量可以较大,以保证一个虚拟场景区域仅包括一个场景对象,当然具体大小要根据地图大小进行设置,本发明实施例对此不做具体限定。
如图13所示,图13是获取到的初始岛飞机,该终端可以将分割数量设置较大,以保证本次仅获取到一架虚拟飞机。如图14所示,图14为图13中通虚拟飞机的实际显示效果示意图,从图14中可以更清晰的展示出该虚拟飞机的实际显示效果。
1102、终端根据目标格式模型,将该至少一个场景对象的第二位置信息存储至目标资源文件中。
其中,该终端可以根据该目标格式模型,将该至少一个场景对象的第二位置信息,封装为该目标资源文件。其中,该终端还可以获取该场景对象的形状、方向和/材质信息。在该目标应用的物理引擎组件中,该场景对象的形状具体可以包括组成该场景对象的一个或多个基本形状,例如,一个场景对象可以由一个长方体、一个球体或一个正方体组成。该形状具体可以采用形状向量来表示。该方向具体可以采用方向矩阵来表示。
在一种可能的实施方式中,在该目标应用的物理引擎所指示的存储地址中,可以存储有该场景对象的重心坐标、形状向量、方向矩阵以及该场景对象的材质等信息等。在一种可能的实施方式在,该目标格式模型可以为obj格式模型,该目标格式模型是基于构成场景对象的点、线、面等元素,对该场景对象进行存储,该服务器后续可以基于点、线、面元素,将场景对象重现。本步骤中,该终端可以基于该重心坐标、形状向量和方向矩阵,按照目标格式模型,将该重心坐标、形状向量和方向矩阵,转换为点、线、面元素的坐标,并将该点、线、面元素的坐标封装在该目标资源文件中。其中,该终端可以基于该形状向量确定该场景对象的外形轮廓,基于该方向矩阵确定该场景对象的朝向,基于该重心坐标确定该场景对象的位置,按照该场景对象的外形轮廓、朝向,确定该场景对象在该目标资源文件中对应的点、线、面元素,同时基于该位置,确定该点、线、面元素对应的坐标,从位置、形状、方向三个角度,准确的确定出该场景对象在该第二虚拟场景中的具体表现形态。
1103、终端向第二设备发送该目标资源文件。
终端向服务器发送该目标资源文件,该目标资源文件用于指示在第二设备上建立第一虚拟场景,基于所述第一虚拟场景对目标应用角色的位置进行识别。该服务器接收该目标资源文件,并通过上述对象获取方法实施例的步骤201-204,对目标应用角色进行位置异常识别。其中,该终端还可以向服务器发送该目标应用的应用标识。
需要说明的是,该终端可以基于该目标应用的物理引擎组件,获取该目标应用的虚拟场景的场景数据,并将目标资源文件发送至服务器,使得服务器可以基于该目标资源文件,在服务器的物理引擎组件中,重现该目标应用的虚拟场景,在该虚拟场景中进行角色位置异常识别,保证了角色位置异常识别的准确性。并且,该终端还可以通过全量获取和分割获取的获取方式来获取场景对象的场景数据,使得终端能够灵活获取场景对象的场景数据,而且,能够满足任一种需要一个或多个场景对象的场景数据的需求,能够适用于多种不同的场景数据获取的场景,大大提高了文件获取过程的灵活性和实用性。
本发明实施例中,该终端可以基于目标应用的物理引擎组件,获取该目标应用的至少一个场景对象的第二位置信息,并基于目标格式模型,将目标资源文件发送至服务器。由于能够基于物理引擎组件直接获取到该场景对象的原始场景数据,从而提高了文件获取的准确性和获取效率。并且,该终端还可以基于目标格式模型获取目标资源文件,使得服务器可以获取到能够识别的文件,提高了数据读取的效率,进一步提高了应用角色位置异常识别的效率。
图15是本发明实施例提供的一种应用角色位置识别装置的框图。该装置可以应用在第二设备上,该第二设备可以为服务器,参见图15,该装置包括:获取模块1501和确定模块1502。
获取模块1501,用于获取目标应用的第一虚拟场景,该第一虚拟场景用于模拟该目标应用在第一设备上显示的第二虚拟场景;
该获取模块1501,还用于获取至少一个目标应用角色在该第二虚拟场景中的第一位置信息;
确定模块1502,用于根据该至少一个目标应用角色的第一位置信息和该第一虚拟场景中至少一个场景对象,确定该至少一个目标应用角色的位置识别结果,该位置识别结果用于指示该至少一个目标应用角色的位置是否异常。
可选的,该获取模块1501,还用于基于该目标应用的物理引擎组件,获取该第二虚拟场景中至少一个场景对象的第二位置信息,该物理引擎组件用于指示该至少一个场景对象的第二位置信息的存储地址;根据该至少一个场景对象的第二位置信息,创建该目标应用的第一虚拟场景。
可选的,该获取模块1501,还用于根据该目标应用的物理引擎组件所指示的存储地址,从安装该目标应用的第一设备中获取目标资源文件;根据目标格式模型,从该目标资源文件中解析出该至少一个场景对象的第二位置信息。
可选的,述目标资源文件还包括该至少一个场景对象的形状、方向或材质信息中的至少一项。
可选的,该获取模块1501,还用于在第二设备的物理引擎组件中创建目标虚拟空间;根据该至少一个场景对象的第二位置信息,将该至少一个场景对象添加至该目标虚拟空间中,得到该目标应用的第一虚拟场景。
可选的,该获取模块1501,还用于在该目标虚拟空间中,根据该至少一个场景对象对应的多个顶点,将该多个顶点按照每个顶点对应序号所指示的连线顺序进行连接,得到该至少一个场景对象,该多个顶点用于指示场景对象在该第一虚拟场景的位置、形状和方向;在该物理引擎组件中设置该至少一个场景对象的材质信息。
可选的,该获取模块1501,还用于当该第一虚拟场景与该第二虚拟场景大小不同时,按照该第一虚拟场景相对于该第二虚拟场景缩放系数,对该至少一个场景对象的第二位置信息进行缩放;基于缩放后的第二位置信息,将该至少一个场景对象添加至该目标虚拟空间中,得到该第一虚拟场景。
可选的,该确定模块1502,还用于确定该至少一个场景对象在该第一虚拟场景中的第三位置信息;根据该至少一个目标应用角色的第一位置信息和该至少一个场景对象第三位置信息,基于目标识别策略,对该至少一个目标应用角色进行位置异常识别;当该至少一个目标应用角色的位置与任一个场景对象的位置重叠时,确定该至少一个目标应用角色为恶意对象。
可选的,该确定模块1502,还用于基于该至少一个目标应用角色的多个连续采集时间的多个第一位置信息,确定该目标应用角色的起点坐标和射线向量;根据该起点坐标、该射线向量和该目标应用角色的周围至少一个场景对象的第三位置信息,识别该至少一个目标应用角色与该周围至少一个场景对象是否发生碰撞;当该至少一个目标应用角色与该周围至少一个场景对象发生碰撞时,确定该至少一个目标应用角色的位置与任一个场景对象的位置重叠。
可选的,该确定模块1502,还用于根据该至少一个目标应用角色的第一位置信息,生成该至少一个目标应用角色对应在该第一虚拟场景的三维立体对象;根据该三维立体对象和该至少一个场景对象的第三位置信息,识别该至少一个场景对象是否与该三维立体对象重叠;当该至少一个场景对象与该三维立体对象重叠时,确定该至少一个目标应用角色的位置与任一个场景对象的位置重叠。
可选的,该确定模块1502,还用于确定该至少一个场景对象在该第一虚拟场景中的第三位置信息;从该至少一个目标应用角色的第一位置信息中,提取该目标应用角色的关联对象的位置信息;根据该关联对象的位置信息和该至少一个场景对象的第三位置信息,对该关联对象进行位置异常识别,当该关联对象的位置与任一个场景对象的位置重叠时,确定该至少一个目标应用角色的位置异常。
可选的,该确定模块1502,还用于根据该至少一个目标应用角色的第一位置信息和该至少一个场景对象在该第一虚拟场景中的第一位置信息,基于该第一设备的物理引擎组件的识别功能,对该至少一个目标应用角色进行位置异常识别,该第一设备的物理引擎组件中配置有目标识别策略。
可选的,该获取模块1501,还用于接收第三设备发送的该至少一个目标应用角色的第一位置信息,该第三设备为该至少一个目标应用角色对应用户所在的终端,或者该目标应用的后台服务器;接收第四设备发送的该至少一个目标应用角色的历史行为记录,从该历史行为记录中获取该至少一个目标应用角色的第一位置信息,该历史行为记录用于指示该至少一个目标应用角色在该第二虚拟场景的历史行为,该第四设备为该目标应用的后台服务器。
本发明实施例中,该服务器可以通过第一虚拟场景来模拟该目标应用在第一设备上显示的第二虚拟场景,并根据目标应用角色在第二虚拟场景中的第一位置信息,和该第一虚拟场景中至少一个场景对象,确定该至少一个目标应用角色的位置识别结果,由于基于各个场景对象,在第一虚拟场景中对目标应用角色进行位置异常识别,因此,能够准确的基于场景对象识别出该目标应用角色的位置是否异常,大大提高了应用角色位置异常识别的准确性。
图16是本发明实施例提供的一种应用角色位置异常识别装置的框图。该装置可以应用在第一设备上,该第一设备可以为终端,参见图16,该装置包括:获取模块1601、存储模块1602和发送模块1603。
获取模块1601,用于基于目标应用的物理引擎组件,获取该目标应用的至少一个场景对象的第二位置信息,该第二位置信息用于指示场景对象在该目标应用在第一设备上显示的第二虚拟场景中的位置,该物理引擎组件用于指示该第二位置信息的存储地址;
存储模块1602,用于根据目标格式模型,将该至少一个场景对象的第二位置信息存储至目标资源文件中;
发送模块1603,用于向第二设备发送该目标资源文件,该目标资源文件用于指示在第二设备上建立第一虚拟场景,基于该第一虚拟场景对目标应用角色的位置进行识别。
可选的,该获取模块1601,还用于当接收到第二设备的获取指令时,根据该目标应用的物理引擎组件所指示的存储地址,从该存储地址中获取该第二虚拟场景的场景数据,该场景数据用于指示该第二虚拟场景包括的至少一个场景对象;从该场景数据中提取该至少一个场景对象的第二位置信息。
可选的,该获取模块1601,还用于如果该场景数据还包括该至少一个场景对象的形状、方向和材质信息,从该场景数据中提取该至少一个场景对象的第二位置信息、形状、方向和材质信息。
可选的,该获取模块1601,还用于当接收到获取指令时,显示数据选择界面;根据该数据选择界面中多个对象类型选项中被选中的目标类型,从该存储地址中获取该第二虚拟场景中目标场景数据,该目标场景数据用于指示该第二虚拟场景中的目标类型的场景对象。
本发明实施例中,该终端可以基于目标应用的物理引擎组件,获取该目标应用的至少一个场景对象的第二位置信息,并基于目标格式模型,将目标资源文件发送至服务器。由于能够基于物理引擎组件直接获取到该场景对象的原始场景数据,从而提高了文件获取的准确性和获取效率。并且,该终端还可以基于目标格式模型获取目标资源文件,使得服务器可以获取到能够识别的文件,提高了数据读取的效率,进一步提高了应用角色位置异常识别的效率。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的应用角色位置异常识别装置在应用角色位置异常识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的应用角色位置异常识别装置与应用角色位置异常识别方法实施例实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图17是本发明实施例提供的一种终端的结构示意图。该终端1700可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1700包括有:处理器1701和存储器1702。
处理器1701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1701所执行以实现本申请中方法实施例提供的应用角色位置异常识别方法。
在一些实施例中,终端1700还可选包括有:***设备接口1703和至少一个***设备。处理器1701、存储器1702和***设备接口1703之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口1703相连。具体地,***设备包括:射频电路1704、触摸显示屏1705、摄像头1706、音频电路1707、定位组件1708和电源1709中的至少一种。
***设备接口1703可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器1701和存储器1702。在一些实施例中,处理器1701、存储器1702和***设备接口1703被集成在同一芯片或电路板上;在一些其他实施例中,处理器1701、存储器1702和***设备接口1703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1704包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1705是触摸显示屏时,显示屏1705还具有采集在显示屏1705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1701进行处理。此时,显示屏1705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1705可以为一个,设置终端1700的前面板;在另一些实施例中,显示屏1705可以为至少两个,分别设置在终端1700的不同表面或呈折叠设计;在再一些实施例中,显示屏1705可以是柔性显示屏,设置在终端1700的弯曲表面上或折叠面上。甚至,显示屏1705还可以设置成非矩形的不规则图形,也即异形屏。显示屏1705可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1706用于采集图像或视频。可选地,摄像头组件1706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1701进行处理,或者输入至射频电路1704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1701或射频电路1704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1707还可以包括耳机插孔。
定位组件1708用于定位终端1700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1708可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***的定位组件。
电源1709用于为终端1700中的各个组件进行供电。电源1709可以是交流电、直流电、一次性电池或可充电电池。当电源1709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1700还包括有一个或多个传感器1710。该一个或多个传感器1710包括但不限于:加速度传感器1711、陀螺仪传感器1712、压力传感器1713、指纹传感器1714、光学传感器1715以及接近传感器1716。
加速度传感器1711可以检测以终端1700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1711可以用于检测重力加速度在三个坐标轴上的分量。处理器1701可以根据加速度传感器1711采集的重力加速度信号,控制触摸显示屏1705以横向视图或纵向视图进行用户界面的显示。加速度传感器1711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1712可以检测终端1700的机体方向及转动角度,陀螺仪传感器1712可以与加速度传感器1711协同采集用户对终端1700的3D动作。处理器1701根据陀螺仪传感器1712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1713可以设置在终端1700的侧边框和/或触摸显示屏1705的下层。当压力传感器1713设置在终端1700的侧边框时,可以检测用户对终端1700的握持信号,由处理器1701根据压力传感器1713采集的握持信号进行左右手识别或快捷操作。当压力传感器1713设置在触摸显示屏1705的下层时,由处理器1701根据用户对触摸显示屏1705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1714用于采集用户的指纹,由处理器1701根据指纹传感器1714采集到的指纹识别用户的身份,或者,由指纹传感器1714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1714可以被设置终端1700的正面、背面或侧面。当终端1700上设置有物理按键或厂商Logo时,指纹传感器1714可以与物理按键或厂商Logo集成在一起。
光学传感器1715用于采集环境光强度。在一个实施例中,处理器1701可以根据光学传感器1715采集的环境光强度,控制触摸显示屏1705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1705的显示亮度;当环境光强度较低时,调低触摸显示屏1705的显示亮度。在另一个实施例中,处理器1701还可以根据光学传感器1715采集的环境光强度,动态调整摄像头组件1706的拍摄参数。
接近传感器1716,也称距离传感器,通常设置在终端1700的前面板。接近传感器1716用于采集用户与终端1700的正面之间的距离。在一个实施例中,当接近传感器1716检测到用户与终端1700的正面之间的距离逐渐变小时,由处理器1701控制触摸显示屏1705从亮屏状态切换为息屏状态;当接近传感器1716检测到用户与终端1700的正面之间的距离逐渐变大时,由处理器1701控制触摸显示屏1705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图17中示出的结构并不构成对终端1700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图18是本发明实施例提供的一种服务器的结构示意图,该服务器1800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)1801和一个或一个以上的存储器1802,其中,该存储器1802中存储有至少一条指令,该至少一条指令由该处理器1801加载并执行以实现上述各个方法实施例提供的应用角色位置异常识别方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端或服务器中的处理器执行以完成上述实施例中的应用角色位置异常识别方法。例如,该计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、RAM(random access memory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种应用角色位置异常识别方法,其特征在于,所述方法包括:
根据目标应用的物理引擎组件所指示的至少一个场景对象的第二位置信息的存储地址,从安装所述目标应用的第一设备中获取目标资源文件,所述目标资源文件中存储有所述至少一个场景对象的第二位置信息,所述第二位置信息是根据目标格式模型存储的;
根据目标格式模型,从所述目标资源文件中解析出所述至少一个场景对象的第二位置信息,所述至少一个场景对象的对象类型符合目标类型,所述目标类型是用户从终端显示的数据选择界面中的多个对象类型选项中选中的,所述多个对象类型选项用于指示多个对象类型,所述多个对象类型包括静态物体和动态物体;
根据所述至少一个场景对象的第二位置信息,创建所述目标应用的第一虚拟场景,所述第一虚拟场景用于模拟所述目标应用在第一设备上显示的第二虚拟场景;
获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息,其中所述第一位置信息是在连续时间段内对目标应用角色的位置信息进行采集得到的;
根据所述目标应用角色的第一位置信息,获取所述目标应用角色的目标场景范围内的至少一个场景对象在所述第一虚拟场景中的第三位置信息;
根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象的第三位置信息、形状、方向和材质信息,对所述目标应用角色进行位置异常识别,当所述目标应用角色的位置与所述场景对象所占空间发生重叠时,确定所述目标应用角色的位置异常。
2.根据权利要求1所述的方法,其特征在于,所述目标资源文件还包括所述至少一个场景对象的形状、方向或材质信息中的至少一项。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第二虚拟场景中至少一个场景对象的第二位置信息,创建所述目标应用的第一虚拟场景包括:
在第二设备的物理引擎组件中创建目标虚拟空间;
根据所述至少一个场景对象的第二位置信息,将所述至少一个场景对象添加至所述目标虚拟空间中,得到所述目标应用的第一虚拟场景。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象的第三位置信息,基于目标识别策略,对所述至少一个目标应用角色进行位置异常识别;
当所述至少一个目标应用角色的位置与任一个场景对象的位置重叠时,确定所述至少一个目标应用角色的位置异常。
5.根据权利要求4所述的方法,其特征在于,所述根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象在所述第一虚拟场景中的位置信息,基于目标识别策略,对所述至少一个目标应用角色进行位置异常识别包括:
根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象在所述第一虚拟场景中的第一位置信息,基于所述第一设备的物理引擎组件的识别功能,对所述至少一个目标应用角色进行位置异常识别,所述第一设备的物理引擎组件中配置有目标识别策略。
6.根据权利要求1所述的方法,其特征在于,所述获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息包括以下至少一项:
接收第三设备发送的所述至少一个目标应用角色的第一位置信息,所述第三设备为所述至少一个目标应用角色对应用户所在的终端,或者所述目标应用的后台服务器;
接收第四设备发送的所述至少一个目标应用角色的历史行为记录,从所述历史行为记录中获取所述至少一个目标应用角色的第一位置信息,所述历史行为记录用于指示所述至少一个目标应用角色在所述第二虚拟场景的历史行为,所述第四设备为所述目标应用的后台服务器。
7.一种应用角色位置异常识别方法,其特征在于,所述方法包括:
基于目标应用的物理引擎组件,获取所述目标应用的至少一个场景对象的第二位置信息、形状、方向和材质信息,所述第二位置信息用于指示场景对象在所述目标应用在第一设备显示的第二虚拟场景中的位置,所述物理引擎组件用于指示所述第二位置信息的存储地址;
根据目标格式模型,将所述至少一个场景对象的第二位置信息存储至目标资源文件中,其中,所述至少一个场景对象的对象类型符合目标类型,所述目标类型是用户从终端显示的数据选择界面中的多个对象类型选项中选中的,所述多个对象类型选项用于指示多个对象类型,所述多个对象类型包括静态物体和动态物体;
向第二设备发送所述目标资源文件,所述目标资源文件用于指示在第二设备上建立第一虚拟场景,基于所述第一虚拟场景对目标应用角色的位置进行识别,其中,所述第一虚拟场景是根据所述至少一个场景对象的第二位置信息创建的,所述第一虚拟场景用于模拟所述目标应用在第一设备上显示的第二虚拟场景;所述对目标应用角色的位置进行识别包括:获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息,所述第一位置信息是在连续时间段内对目标应用角色的位置信息进行采集得到的;根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象在所述第一虚拟场景中的第三位置信息、形状、方向和材质信息,对所述目标应用角色进行位置异常识别,当所述目标应用角色的位置与所述场景对象所占空间发生重叠时,确定所述目标应用角色的位置异常。
8.根据权利要求7所述的方法,其特征在于,所述基于目标应用的物理引擎组件,获取所述目标应用的至少一个场景对象第二位置信息、形状、方向和材质信息包括:
当接收到第二设备的获取指令时,根据所述目标应用的物理引擎组件所指示的存储地址,从所述存储地址中获取所述第二虚拟场景的场景数据,所述场景数据用于指示所述第二虚拟场景包括的至少一个场景对象;
从所述场景数据中提取所述至少一个场景对象的第二位置信息、形状、方向和材质信息。
9.根据权利要求8所述的方法,其特征在于,所述当接收到所述获取指令时,根据所述目标应用的物理引擎组件所指示的存储地址,从所述存储地址中获取所述第二虚拟场景的场景数据包括:
当接收到获取指令时,显示数据选择界面;
根据所述数据选择界面中多个对象类型选项中被选中的目标类型,从所述存储地址中获取所述第二虚拟场景中目标场景数据,所述目标场景数据用于指示所述第二虚拟场景中目标类型的场景对象。
10.一种应用角色位置异常识别装置,其特征在于,所述装置包括:
获取模块,用于根据目标应用的物理引擎组件所指示的至少一个场景对象的第二位置信息的存储地址,从安装所述目标应用的第一设备中获取目标资源文件,所述目标资源文件中存储有所述至少一个场景对象的第二位置信息,所述第二位置信息是根据目标格式模型存储的;
根据目标格式模型,从所述目标资源文件中解析出所述至少一个场景对象的第二位置信息,所述至少一个场景对象的对象类型符合目标类型,所述目标类型是用户从终端显示的数据选择界面中的多个对象类型选项中选中的,所述多个对象类型选项用于指示多个对象类型,所述多个对象类型包括静态物体和动态物体;
根据所述至少一个场景对象的第二位置信息,创建所述目标应用的第一虚拟场景,所述第一虚拟场景用于模拟所述目标应用在第一设备上显示的第二虚拟场景;
所述获取模块,还用于获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息,其中所述第一位置信息是在连续时间段内对目标应用角色的位置信息进行采集得到的;
根据所述目标应用角色的第一位置信息,获取所述目标应用角色的目标场景范围内的至少一个场景对象在所述第一虚拟场景中的第三位置信息;
确定模块,用于根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象的第三位置信息、形状、方向和材质信息,对所述目标应用角色进行位置异常识别,当所述目标应用角色的位置与所述场景对象所占空间发生重叠时,确定所述目标应用角色的位置异常。
11.根据权利要求10所述的装置,其特征在于,所述目标资源文件还包括所述至少一个场景对象的形状、方向或材质信息中的至少一项。
12.根据权利要求10所述的装置,其特征在于,所述获取模块还用于:
在第二设备的物理引擎组件中创建目标虚拟空间;
根据所述至少一个场景对象的第二位置信息,将所述至少一个场景对象添加至所述目标虚拟空间中,得到所述目标应用的第一虚拟场景。
13.根据权利要求10所述的装置,其特征在于,所述确定模块用于:
根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象的第三位置信息,基于目标识别策略,对所述至少一个目标应用角色进行位置异常识别;
当所述至少一个目标应用角色的位置与任一个场景对象的位置重叠时,确定所述至少一个目标应用角色的位置异常。
14.根据权利要求13所述的装置,其特征在于,所述确定模块还用于:
根据所述至少一个目标应用角色的第一位置信息和所述至少一个场景对象在所述第一虚拟场景中的第一位置信息,基于所述第一设备的物理引擎组件的识别功能,对所述至少一个目标应用角色进行位置异常识别,所述第一设备的物理引擎组件中配置有目标识别策略。
15.根据权利要求10所述的装置,其特征在于,所述获取模块还用于:
接收第三设备发送的所述至少一个目标应用角色的第一位置信息,所述第三设备为所述至少一个目标应用角色对应用户所在的终端,或者所述目标应用的后台服务器;
接收第四设备发送的所述至少一个目标应用角色的历史行为记录,从所述历史行为记录中获取所述至少一个目标应用角色的第一位置信息,所述历史行为记录用于指示所述至少一个目标应用角色在所述第二虚拟场景的历史行为,所述第四设备为所述目标应用的后台服务器。
16.一种应用角色位置异常识别装置,其特征在于,所述装置包括:
获取模块,用于基于目标应用的物理引擎组件,获取所述目标应用的至少一个场景对象的第二位置信息、形状、方向和材质信息,所述第二位置信息用于指示场景对象在所述目标应用在第一设备显示的第二虚拟场景中的位置,所述物理引擎组件用于指示所述第二位置信息的存储地址;
存储模块,用于根据目标格式模型,将所述至少一个场景对象的第二位置信息存储至目标资源文件中,其中,所述至少一个场景对象的对象类型符合目标类型,所述目标类型是用户从终端显示的数据选择界面中的多个对象类型选项中选中的,所述多个对象类型选项用于指示多个对象类型,所述多个对象类型包括静态物体和动态物体;
发送模块,用于向第二设备发送所述目标资源文件,所述目标资源文件用于指示在第二设备上建立第一虚拟场景,基于所述第一虚拟场景对目标应用角色的位置进行识别,其中,所述第一虚拟场景是根据所述至少一个场景对象的第二位置信息创建的,所述第一虚拟场景用于模拟所述目标应用在第一设备上显示的第二虚拟场景;所述对目标应用角色的位置进行识别包括:获取至少一个目标应用角色在所述第二虚拟场景中的第一位置信息,所述第一位置信息是在连续时间段内对目标应用角色的位置信息进行采集得到的;根据所述至少一个目标应用角色的第一位置信息和所述第一虚拟场景中至少一个场景对象在所述第一虚拟场景中的第三位置信息、形状、方向和材质信息,对所述目标应用角色进行位置异常识别,当所述目标应用角色的位置与所述场景对象所占空间发生重叠时,确定所述目标应用角色的位置异常。
17.根据权利要求16所述的装置,其特征在于,所述获取模块还用于:
当接收到第二设备的获取指令时,根据所述目标应用的物理引擎组件所指示的存储地址,从所述存储地址中获取所述第二虚拟场景的场景数据,所述场景数据用于指示所述第二虚拟场景包括的至少一个场景对象;
从所述场景数据中提取所述至少一个场景对象的第二位置信息、形状、方向和材质信息。
18.根据权利要求17所述的装置,其特征在于,所述获取模块还用于:
当接收到获取指令时,显示数据选择界面;
根据所述数据选择界面中多个对象类型选项中被选中的目标类型,从所述存储地址中获取所述第二虚拟场景中目标场景数据,所述目标场景数据用于指示所述第二虚拟场景中目标类型的场景对象。
19.一种电子设备,其特征在于,所述电子设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条指令,所述至少一条指令由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求9任一项所述的应用角色位置异常识别方法所执行的操作。
20.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至权利要求9任一项所述的应用角色位置异常识别方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910199228.0A CN109939442B (zh) | 2019-03-15 | 2019-03-15 | 应用角色位置异常识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910199228.0A CN109939442B (zh) | 2019-03-15 | 2019-03-15 | 应用角色位置异常识别方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109939442A CN109939442A (zh) | 2019-06-28 |
CN109939442B true CN109939442B (zh) | 2022-09-09 |
Family
ID=67010051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910199228.0A Active CN109939442B (zh) | 2019-03-15 | 2019-03-15 | 应用角色位置异常识别方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109939442B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111680646B (zh) * | 2020-06-11 | 2023-09-22 | 北京市商汤科技开发有限公司 | 动作检测方法及装置、电子设备和存储介质 |
CN114139241A (zh) * | 2020-09-03 | 2022-03-04 | 阿里巴巴集团控股有限公司 | 场景空间的处理方法、装置及设备 |
CN112717404B (zh) * | 2021-01-25 | 2022-11-29 | 腾讯科技(深圳)有限公司 | 虚拟对象的移动处理方法、装置、电子设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4385863B2 (ja) * | 2004-06-23 | 2009-12-16 | 株式会社セガ | オンラインゲーム不正検出方法 |
US9056248B2 (en) * | 2008-12-02 | 2015-06-16 | International Business Machines Corporation | System and method for detecting inappropriate content in virtual worlds |
US8948501B1 (en) * | 2009-12-22 | 2015-02-03 | Hrl Laboratories, Llc | Three-dimensional (3D) object detection and multi-agent behavior recognition using 3D motion data |
CN101788909B (zh) * | 2010-01-28 | 2012-12-05 | 北京天空堂科技有限公司 | 一种网络游戏服务器端行走***的解决方法和装置 |
CN104932872A (zh) * | 2014-03-18 | 2015-09-23 | 腾讯科技(深圳)有限公司 | 消息处理方法和服务器 |
CN106955493A (zh) * | 2017-03-30 | 2017-07-18 | 北京乐动卓越科技有限公司 | 一种3d网络游戏中角色移动的校验方法 |
CN108629180B (zh) * | 2018-03-29 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 异常操作的确定方法和装置、存储介质、电子装置 |
-
2019
- 2019-03-15 CN CN201910199228.0A patent/CN109939442B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109939442A (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110917616B (zh) | 虚拟场景中的方位提示方法、装置、设备及存储介质 | |
CN110694273A (zh) | 控制虚拟对象使用道具的方法、装置、终端及存储介质 | |
CN109634413B (zh) | 对虚拟环境进行观察的方法、设备及存储介质 | |
CN108694073B (zh) | 虚拟场景的控制方法、装置、设备及存储介质 | |
CN109939442B (zh) | 应用角色位置异常识别方法、装置、电子设备及存储介质 | |
CN110102052B (zh) | 虚拟资源投放方法、装置、电子装置及存储介质 | |
CN111273780B (zh) | 基于虚拟环境的动画播放方法、装置、设备及存储介质 | |
CN111672106B (zh) | 虚拟场景显示方法、装置、计算机设备及存储介质 | |
CN113041620B (zh) | 显示位置标记的方法、装置、设备及存储介质 | |
CN112156464A (zh) | 虚拟对象的二维形象展示方法、装置、设备及存储介质 | |
CN111026318A (zh) | 基于虚拟环境的动画播放方法、装置、设备及存储介质 | |
CN111589141A (zh) | 虚拟环境画面的显示方法、装置、设备及介质 | |
CN113577765A (zh) | 用户界面的显示方法、装置、设备及存储介质 | |
CN111325822B (zh) | 热点图的显示方法、装置、设备及可读存储介质 | |
CN113181647A (zh) | 信息显示方法、装置、终端及存储介质 | |
CN113398572A (zh) | 虚拟道具切换方法、技能切换方法、虚拟对象切换方法 | |
CN111760281A (zh) | 过场动画播放方法、装置、计算机设备及存储介质 | |
CN111068323A (zh) | 智能速度检测方法、装置、计算机设备及存储介质 | |
CN112306332B (zh) | 确定选中目标的方法、装置、设备及存储介质 | |
CN113032590B (zh) | 特效展示方法、装置、计算机设备及计算机可读存储介质 | |
CN111035929B (zh) | 基于虚拟环境的淘汰信息反馈方法、装置、设备及介质 | |
CN113134232A (zh) | 虚拟对象的控制方法、装置、设备及计算机可读存储介质 | |
CN112950753A (zh) | 虚拟植物显示方法、装置、设备及存储介质 | |
CN113194329B (zh) | 直播互动方法、装置、终端及存储介质 | |
CN112717381B (zh) | 虚拟场景展示方法、装置、计算机设备及存储介质 |
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 |