CN106960475B - 三维模型的部位点击处理方法及装置、存储介质和处理器 - Google Patents
三维模型的部位点击处理方法及装置、存储介质和处理器 Download PDFInfo
- Publication number
- CN106960475B CN106960475B CN201710199805.7A CN201710199805A CN106960475B CN 106960475 B CN106960475 B CN 106960475B CN 201710199805 A CN201710199805 A CN 201710199805A CN 106960475 B CN106960475 B CN 106960475B
- Authority
- CN
- China
- Prior art keywords
- model
- detection body
- body model
- identification
- dimensional model
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Architecture (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种三维模型的部位点击处理方法及装置、存储介质和处理器。其中,该方法包括:按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,触摸点为触摸介质与显示界面的接触点;根据关联的检测体模型获取三维模型上点击命中的部位标识;执行与部位标识对应的响应操作。本发明解决了相关技术中所提供的点击检测方案中未支持依据配置信息动态加载碰撞器、而且还不支持3D模型在不同运动状态下的碰撞器跟随检测的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种三维模型的部位点击处理方法及装置、存储介质和处理器。
背景技术
目前,在三维(3-Dimension,简称为3D)游戏的游戏场景中,会存在诸多的3D模型,例如:玩家模型、怪物模型、非玩家角色(Non Player Character,简称为NPC)模型等,在其中一些特定场景(例如:家园主角互动、妖精培养互动)中,还需要与3D模型进行交互,依据用户点击范围检测3D模型被触摸的部位,进而触发响应不同的动作或事件;但是,在另外一些特定场景(例如:挑战副本、玩家对战(Player VS Player,简称为PVP))中,则不需要与3D模型进行交互。3D模型在场景中可能会随时发生移动(例如:用户操控的玩家模型),当然也可能处于静止不动状态(例如:NPC模型),此外,3D模型还可能会处于不同的动作状态(例如:跑动、坐下、发动技能等)。即便是在同一场景中(例如:多个妖精聚会,最多只能与两个妖精互动),可能需要与其中一些模型进行交互,而另一些模型却不需要进行交互。为此,为适应与3D模型进行交互而提出的点击检测方法需要能够灵活地应对以上提到的所有应用场景。
目前,在部分游戏中提供有针对单个模型的点击检测方案,该方案通过在被检测模型上加载碰撞器的方式来检测3D模型是否被点击命中。然而,其缺陷在于:该方案并未提供依据配置信息动态加载碰撞器的功能,而且该方案并不支持模型在不同动作状态下的碰撞器跟随检测功能。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明其中一实施例提供了一种三维模型的部位点击处理方法及装置、存储介质和处理器,以至少解决相关技术中所提供的点击检测方案中未支持依据配置信息动态加载碰撞器、而且还不支持3D模型在不同运动状态下的碰撞器跟随检测的技术问题。
根据本发明其中一实施例的一个方面,提供了一种三维模型的部位点击处理方法,包括:
按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,触摸点为触摸介质与显示界面的接触点;根据关联的检测体模型获取三维模型上点击命中的部位标识;执行与部位标识对应的响应操作。
可选地,预设配置信息包括:第一模型标识、检测体存储路径、挂接点标识,按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型包括:采用第一模型标识加载三维模型;依据检测体存储路径读取待挂接的检测体模型;按照挂接点标识将待挂接的检测体模型挂接至三维模型的骨骼上。
可选地,在按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型之前,还包括:在三维模型的骨骼上设置挂接点,确定挂接点标识;在三维模型的运动状态发生改变时,通过挂接点调整待挂接的检测体模型的位置。
可选地,通过挂接点调整待挂接的检测体模型的位置包括:将待挂接的检测体模型对应的第一世界坐标与挂接骨骼的初始逆变换矩阵相乘,得到与待挂接的检测体模型对应的本地坐标;将本地坐标与挂接骨骼的运动累积变换矩阵相乘,得到与待挂接的检测体模型对应的第二世界坐标。
可选地,在按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型之后,还包括:根据三维模型在当前游戏场景下所归属的互动类型确定三维模型的类别;将待挂接的检测体模型的第二模型标识设置为第一模型标识与挂接骨骼对应的部位标识的组合;根据当前游戏场景的互动情况设置待挂接的检测体模型的检测标志位,其中,检测标志位用于表示待挂接的检测体模型在当前游戏场景是否参与互动。
可选地,通过视点所在位置与触摸点所在位置确定关联的检测体模型包括:以视点所在位置为起点,向触摸点所在位置的方向上发射一条射线,判断是否存在与射线相交的检测体模型;将与触摸点距离最近的首次相交的检测体模型确定为关联的检测体模型。
可选地,根据关联的检测体模型获取部位标识包括:获取关联的检测体模型的模型标识,其中,关联的检测体模型的模型标识是由三维模型的第一模型标识与部位标识组成;对关联的检测体模型的模型标识进行解析,提取部位标识。
可选地,执行与部位标识对应的响应操作包括:通过三维模型的第一模型标识和部位标识获取对应的响应信息;根据响应信息触发执行对应的响应操作。
根据本发明其中一实施例的另一方面,还提供了一种三维模型的部位点击处理装置,包括:
加载模块,用于按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;第一确定模块,用于通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,触摸点为触摸介质与显示界面的接触点;获取模块,用于根据关联的检测体模型获取三维模型上点击命中的部位标识;执行模块,用于执行与部位标识对应的响应操作。
可选地,预设配置信息包括:第一模型标识、检测体存储路径、挂接点标识,加载模块包括:加载单元,用于采用第一模型标识加载三维模型;读取单元,用于依据检测体存储路径读取待挂接的检测体模型;挂接单元,用于按照挂接点标识将待挂接的检测体模型挂接至三维模型的骨骼上。
可选地,上述装置还包括:第一设置模块,用于在三维模型的骨骼上设置挂接点,确定挂接点标识;调整模块,用于在三维模型的运动状态发生改变时,通过挂接点调整待挂接的检测体模型的位置。
可选地,调整模块包括:第一计算单元,用于将待挂接的检测体模型对应的第一世界坐标与挂接骨骼的初始逆变换矩阵相乘,得到与待挂接的检测体模型对应的本地坐标;第二计算单元,用于将本地坐标与挂接骨骼的运动累积变换矩阵相乘,得到与待挂接的检测体模型对应的第二世界坐标。
可选地,上述装置还包括:第二确定模块,用于根据三维模型在当前游戏场景下所归属的互动类型确定三维模型的类别;第二设置模块,用于将待挂接的检测体模型的第二模型标识设置为第一模型标识与挂接骨骼对应的部位标识的组合;第三设置模块,用于根据当前游戏场景的互动情况设置待挂接的检测体模型的检测标志位,其中,检测标志位用于表示待挂接的检测体模型在当前游戏场景是否参与互动。
可选地,第一确定模块包括:判断单元,用于以视点所在位置为起点,向触摸点所在位置的方向上发射一条射线,判断是否存在与射线相交的检测体模型;确定单元,用于将与触摸点距离最近的首次相交的检测体模型确定为关联的检测体模型。
可选地,获取模块包括:第一获取单元,用于获取关联的检测体模型的模型标识,其中,关联的检测体模型的模型标识是由三维模型的第一模型标识与部位标识组成;解析单元,用于对关联的检测体模型的模型标识进行解析,提取部位标识。
可选地,执行模块包括:第二获取单元,用于通过三维模型的第一模型标识和部位标识获取对应的响应信息;执行单元,用于根据响应信息触发执行对应的响应操作。
根据本发明其中一实施例的又一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述三维模型的部位点击处理方法。
根据本发明其中一实施例的再一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述三维模型的部位点击处理方法。
根据本发明其中一实施例的再一方面,还提供了一种终端,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,程序包括用于执行上述三维模型的部位点击处理方法。
在本发明其中一实施例中,采用按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型的方式,通过视点所在位置与触摸点所在位置确定关联的检测体模型,并根据关联的检测体模型获取三维模型上点击命中的部位标识以执行与部位标识对应的响应操作,达到了依据配置信息动态加载或卸载检测体模型,基于检测体模型检测3D模型在不同运动状态下不同部位是否被点击命中的目的,从而通过检测体模型的动态加载实现了同一套模型资源适用于不同应用场景,而且,通过将检测体模型挂接在三维模型的骨骼上,提升了在三维模型的不同运动状态下检测点击命中部位的有效性的技术效果,进而解决了相关技术中所提供的点击检测方案中未支持依据配置信息动态加载碰撞器、而且还不支持3D模型在不同运动状态下的碰撞器跟随检测的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明其中一实施例的三维模型的部位点击处理方法的流程图;
图2是根据本发明其中一优选实施例的检测体的动态加载与卸载过程的流程图;
图3是根据本发明其中一优选实施例的射线检测方法原理的示意图;
图4是根据本发明其中一优选实施例的3D模型点击检测过程的流程图;
图5是根据本发明其中一实施例的三维模型的部位点击处理装置的结构框图;
图6是根据本发明其中一优选实施例的三维模型的部位点击处理装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明其中一实施例,提供了一种三维模型的部位点击处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明其中一实施例的三维模型的部位点击处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S12,按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;
步骤S13,通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,触摸点为触摸介质与显示界面的接触点;
步骤S14,根据关联的检测体模型获取三维模型上点击命中的部位标识;
步骤S15,执行与部位标识对应的响应操作。
通过上述步骤,可以采用按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型的方式,通过视点所在位置与触摸点所在位置确定关联的检测体模型,并根据关联的检测体模型获取三维模型上点击命中的部位标识以执行与部位标识对应的响应操作,达到了依据配置信息动态加载或卸载检测体模型,基于检测体模型检测3D模型在不同运动状态下不同部位是否被点击命中的目的,从而通过检测体模型的动态加载实现了同一套模型资源适用于不同应用场景,而且,通过将检测体模型挂接在三维模型的骨骼上,提升了在三维模型的不同运动状态下检测点击命中部位的有效性的技术效果,进而解决了相关技术中所提供的点击检测方案中未支持依据配置信息动态加载碰撞器、而且还不支持3D模型在不同运动状态下的碰撞器跟随检测的技术问题。
可选地,上述预设配置信息可以包括但不限于:第一模型标识、检测体存储路径、挂接点标识,在步骤S12中,按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型可以包括以下执行步骤:
步骤S121,采用第一模型标识加载三维模型;
步骤S122,依据检测体存储路径读取待挂接的检测体模型;
步骤S123,按照挂接点标识将待挂接的检测体模型挂接至三维模型的骨骼上。
在预设配置信息中可配置需要检测的模型编号(即第一模型标识)、检测体模型挂接点名称(即挂接点标识)、部位标识、挂接的检测体模型存储路径(检测体资源存放在设备上的路径),从而可以灵活地针对特定模型的特定部位进行点击检测。在具体实施过程中,可以先依据模型编号加载对应的3D模型,然后再加载检测体模型存储路径下的检测体模型并挂接到与检测体模型挂接点名称对应的挂接点上。
可选地,在步骤S12,按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型之前,还可以包括以下执行步骤:
步骤S10,在三维模型的骨骼上设置挂接点,确定挂接点标识;
步骤S11,在三维模型的运动状态发生改变时,通过挂接点调整待挂接的检测体模型的位置。
在3D模型上添加检测部位挂接点,可以是由用户通过模型编辑器进行添加,也可以由系统基于图像识别自动添加,以便基于该挂接点动态加载检测体模型。该挂接点需要挂接到3D模型的特定一根骨骼上。这样当3D模型的运动状态发生改变时,检测体模型也会跟随3D模型一起运动,从而确保3D模型在不同运动状态下部位点击检测的准确性。
根据3D模型的不同部位对检测体模型的位置、缩放和旋转等参数进行调整,通过采用所见即所得的方式或图像识别的方式来定位检测体,可以精准地定位3D模型的不同部位。如果是用户通过模型编辑器进行添加,在检测体的相关参数全部调整完毕后,需要在编辑器内将检测体模型删除,以降低对原有3D模型的影响。
可选地,在步骤S11中,通过挂接点调整待挂接的检测体模型的位置可以包括以下执行步骤:
步骤S111,将待挂接的检测体模型对应的第一世界坐标与挂接骨骼的初始逆变换矩阵相乘,得到与待挂接的检测体模型对应的本地坐标;
步骤S112,将本地坐标与挂接骨骼的运动累积变换矩阵相乘,得到与待挂接的检测体模型对应的第二世界坐标。
检测体模型跟随骨骼运动的原理在于:以检测体模型P挂接到骨骼B上为例,假设P的世界坐标为Pw(相当于上述第一世界坐标),B由世界坐标到局部坐标的初始逆变换矩阵为BW→L,B的运动积累变换矩阵为BT,则检测体P运动后的世界坐标P’w(相当于上述第二世界坐标)可以表示为:
P’w=Pw*BW→L*BT;
其中,W代表World,L代表Local,T代表Translation,首先利用检测体模型P的世界坐标Pw与骨骼B的初始逆变换矩阵相乘,可以将检测体模型的世界坐标转换为骨骼的本地坐标,再利用转换后的本地坐标与骨骼B的运动累积变换矩阵BT(该运动累积变换矩阵表示骨骼B运动后变换到世界坐标的转换矩阵)相乘,最终即可得到检测体模型运动后的世界坐标。
可选地,在步骤S12,按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型之后,还可以包括以下执行步骤:
步骤S16,根据三维模型在当前游戏场景下所归属的互动类型确定三维模型的类别;
步骤S17,将待挂接的检测体模型的第二模型标识设置为第一模型标识与挂接骨骼对应的部位标识的组合;
步骤S18,根据当前游戏场景的互动情况设置待挂接的检测体模型的检测标志位,其中,检测标志位用于表示待挂接的检测体模型在当前游戏场景是否参与互动。
图2是根据本发明其中一优选实施例的检测体的动态加载与卸载过程的流程图。如图2所示,该过程可以包括以下处理步骤:
步骤S202,对于需要执行3D模型部位点击检测的场景,通过读取配置文件来加载3D模型。
步骤S204,判断是否需要执行3D模型部位点击检测;如果是,则继续执行步骤S206;如果否,则继续执行步骤S212。
步骤S206,判断检测体模型是否已经挂接至3D模型特定部位的挂接点上;如果是,则流程结束;如果否,则继续执行步骤S208。
步骤S208,当检测体模型加载完成后,需要将检测体添加至当前场景的检测组分类中,按照功能对检测组进行不同命名来分类(例如:依据3D模型所属的功能来进行分类,分为妖精互动、主角模型互动等)。通过分类的方式,在点击检测时可以通过分类名来指定搜索的范围,一方面可以排除无关模型的干扰,而另一方面还可以提高检索的速度。
步骤S210,在完成检测体分类后,还需要进行执行以下配置操作:
(1)需要设置检测体模型的名字为模型标识-部位名称(按照实际需求进行命名),该命名会作为点击命中后的识别分发信息来源;
(2)需要设置检测体模型为不可见,从而不影响原有模型的外观表现;
(3)需要开启检测体的可检测性,通过此项设置可以动态地控制需要检测的检测体模型,而对于临时需要屏蔽检测性(即当同一场景下存在多个3D模型时、最多只能与其中部分而非全部3D模型进行互动时,需要临时将其他无需互动的3D模型的检测性加以屏蔽,进而防止其他3D模型对当前交互的3D模型造成干扰)的检测体模型,通过关闭检测体模型的可检测性即可。
通过上述配置操作实现对检测体进行分组以及灵活地控制3D模型部位点击检测的开启与关闭。
步骤S212,对于无需执行3D模型部位点击检测的场景但却已经加载检测体模型的3D模型,则需要进一步判断检测体是否已经挂接至3D模型特定部位的挂接点上;如果否,则流程结束;如果是,则继续执行步骤S214。
步骤S214,可以动态地对检测体模型进行删除,从而在不同场景使用一套3D模型资源的同时避免检测体模型渲染对系统资源的消耗。
通过上述优选实施例,利用3D模型的预处理流程可以快速精准地加载触摸检测范围的检测体模型,提高检测的精准性;通过将检测体模型的挂接点挂接到3D模型的骨骼上,可以有效地确保3D模型在不同运动状态下特定部位点击检测的准确性;利用检测体的加载与卸载流程,可以实现在使用同一套3D模型资源的基础上,既能够满足游戏玩家在交互场景下的点击检测,又能够避免在非交互场景下检测体的渲染消耗,进而提高了3D模型的复用度。
可选地,在步骤S13中,通过视点所在位置与触摸点所在位置确定关联的检测体模型可以包括以下执行步骤:
步骤S131,以视点所在位置为起点,向触摸点所在位置的方向上发射一条射线,判断是否存在与射线相交的检测体模型;
步骤S132,将与触摸点距离最近的首次相交的检测体模型确定为关联的检测体模型。
该过程用于完成对游戏玩家所执行的点击操作是否命中3D模型中特定部位的检测。通过读取3D模型的检测体加载配置信息,动态将检测体挂接到3D模型的骨骼上,利用以摄像机为起点、触摸点为终点发射的射线与检测体是否相交来检测点击是否命中并确定实际命中的部位,进而将命中事件加以分发并进行响应处理。
图3是根据本发明其中一优选实施例的射线检测方法原理的示意图,如图3所示,以摄像机位置为射线起点,按照从摄像机位置至界面点击位置(即触摸点)的方向上发射一条射线,利用该射线判断是否与检测体相交,并查找满足条件的与该射线第一个(即在游戏玩家与3D模型进行互动时,以最靠近游戏玩家的3D模型为命中目标)相交的检测体模型即为点击选中的检测体模型(即图3中的检测体A)。另外,摄像机还会依据近平面与远平面对超出范围的部分进行裁剪。
可选地,在步骤S14中,根据关联的检测体模型获取部位标识可以包括以下执行步骤:
步骤S141,获取关联的检测体模型的模型标识,其中,关联的检测体模型的模型标识是由三维模型的第一模型标识与部位标识组成;
步骤S142,对关联的检测体模型的模型标识进行解析,提取部位标识。
图4是根据本发明其中一优选实施例的3D模型点击检测过程的流程图。如图4所示,该流程可以包括以下处理步骤:
步骤S402,游戏玩家点击显示界面,得到触摸点的坐标。
步骤S404,显示界面会监听触摸事件,当发生触摸事件时,会返回触摸点的位置坐标,该坐标可能与显示界面内对应的世界坐标不一致,故而需要将位置坐标转换为显示界面内对应的世界坐标。
步骤S406,在当前场景指定检测分类组(依据当前互动功能手动指定分类名)中利用射线法检测是否与可检测的检测体相交。若相交,则继续执行步骤S408;若不相交,则转到步骤S412。
步骤S408,获取被命中的检测体模型的标识,将检测体模型的模型标识解析为3D模型的模型标识与部位标识。
步骤S410,触发该模型对应部位的响应事件。
步骤S412,确定游戏玩家所执行的点击操作未命中3D模型的特定交互部位。
可选地,在步骤S15中,执行与部位标识对应的响应操作可以包括以下执行步骤:
步骤S151,通过三维模型的第一模型标识和部位标识获取对应的响应信息;
步骤S152,根据响应信息触发执行对应的响应操作。
在3D模型的特定部位被点击命中后,会触发该模型对应部位的事件响应,依据模型标识和部位标识可以执行特定响应操作,播放特定动作、语言和文字,进而实现全方位的互动。在优选实施过程中,可以配置不同3D模型对于不同事件的响应信息,以便在获取到点击事件后,依据模型标识和部位标识来检索该模型对应点击事件的响应信息,然后执行对应的响应操作。例如:游戏玩家点击3D模型的脸部可以播放害羞动作、点击胸部播放讨厌动作,当多次触摸脸部后可以进入心跳模式(即3D模型周围出现大量爱心状粒子),而对于两个互动模型,在游戏玩家执行点击操作后,这两个3D模型可以进行对话功能等。
通过本发明提供的上述实施例提供了依据配置信息可动态加载和卸载检测体模型(例如:检测包围盒,其形状既可以是立方体,也可以使用外观三角形或者不规则几何体),从而支持同一套模型资源适用于不同应用场景;可对检测包围盒进行分组并设置是否开启检测功能,以便于控制同一场景下多个3D模型的触控检测以及控制同一个3D模型不同部位的触控检测;另外,将检测包围盒挂接到3D模型的不同骨骼部位,从而实现检测体能够实时跟随3D模型所执行的动作,进而实现3D模型在不同运动状态下人体部位的点击检测及事件分发响应处理,从而为游戏玩家提供多种交互功能。
根据本发明其中一实施例,还提供了一种三维模型的部位点击处理装置的实施例。图5是根据本发明其中一实施例的三维模型的部位点击处理装置的结构框图,如图5所示,该装置可以包括:加载模块10,用于按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;第一确定模块20,用于通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,触摸点为触摸介质与显示界面的接触点;获取模块30,用于根据关联的检测体模型获取三维模型上点击命中的部位标识;执行模块40,用于执行与部位标识对应的响应操作。
可选地,上述预设配置信息可以包括但不限于:第一模型标识、检测体存储路径、挂接点标识,加载模块10可以包括:加载单元(图中未示出),用于采用第一模型标识加载三维模型;读取单元(图中未示出),用于依据检测体存储路径读取待挂接的检测体模型;挂接单元(图中未示出),用于按照挂接点标识将待挂接的检测体模型挂接至三维模型的骨骼上。
可选地,图6是根据本发明其中一优选实施例的三维模型的部位点击处理装置的结构框图,如图6所示,上述装置还可以包括:第一设置模块40,用于在三维模型的骨骼上设置挂接点,确定挂接点标识;调整模块50,用于在三维模型的运动状态发生改变时,通过挂接点调整待挂接的检测体模型的位置。
可选地,调整模块50可以包括:第一计算单元(图中未示出),用于将待挂接的检测体模型对应的第一世界坐标与挂接骨骼的初始逆变换矩阵相乘,得到与待挂接的检测体模型对应的本地坐标;第二计算单元(图中未示出),用于将本地坐标与挂接骨骼的运动累积变换矩阵相乘,得到与待挂接的检测体模型对应的第二世界坐标。
可选地,如图6所示,上述装置还可以包括:第二确定模块60,用于根据三维模型在当前游戏场景下所归属的互动类型确定三维模型的类别;第二设置模块70,用于将待挂接的检测体模型的第二模型标识设置为第一模型标识与挂接骨骼对应的部位标识的组合;第三设置模块80,用于根据当前游戏场景的互动情况设置待挂接的检测体模型的检测标志位,其中,检测标志位用于表示待挂接的检测体模型在当前游戏场景是否参与互动。
可选地,第一确定模块20可以包括:判断单元(图中未示出),用于以视点所在位置为起点,向触摸点所在位置的方向上发射一条射线,判断是否存在与射线相交的检测体模型;确定单元(图中未示出),用于将与触摸点距离最近的首次相交的检测体模型确定为关联的检测体模型。
可选地,获取模块30可以包括:第一获取单元(图中未示出),用于获取关联的检测体模型的模型标识,其中,关联的检测体模型的模型标识是由三维模型的第一模型标识与部位标识组成;解析单元(图中未示出),用于对关联的检测体模型的模型标识进行解析,提取部位标识。
可选地,执行模块40可以包括:第二获取单元(图中未示出),用于通过三维模型的第一模型标识和部位标识获取对应的响应信息;执行单元(图中未示出),用于根据响应信息触发执行对应的响应操作。
根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述三维模型的部位点击处理方法。上述存储介质可以包括但不限于:U盘、只读存储器(ROM)、随机存取存储器(RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述三维模型的部位点击处理方法。上述处理器可以包括但不限于:微处理器(MCU)或可编程逻辑器件(FPGA)等的处理装置
根据本发明其中一实施例,还提供了一种终端,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,程序包括用于执行权利要求上述三维模型的部位点击处理方法。在一些实施例中,上述终端可以是智能手机(例如:Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,简称为MID)、PAD等终端设备。上述显示装置可以是触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与终端的用户界面进行交互。此外,上述终端还可以包括:输入/输出接口(I/O接口)、通用串行总线(USB)端口、网络接口、电源和/或相机。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (17)
1.一种三维模型的部位点击处理方法,其特征在于,包括:
按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;
通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,所述触摸点为触摸介质与显示界面的接触点;
根据所述关联的检测体模型获取所述三维模型上点击命中的部位标识;
执行与所述部位标识对应的响应操作;
其中,所述预设配置信息包括:第一模型标识、检测体存储路径、挂接点标识,在按照所述预设配置信息在所述三维模型的骨骼上加载所述待挂接的检测体模型之后,还包括:根据所述三维模型在当前游戏场景下所归属的互动类型确定所述三维模型的类别;将所述待挂接的检测体模型的第二模型标识设置为所述第一模型标识与挂接骨骼对应的部位标识的组合;根据所述当前游戏场景的互动情况设置所述待挂接的检测体模型的检测标志位,其中,所述检测标志位用于表示所述待挂接的检测体模型在所述当前游戏场景是否参与互动。
2.根据权利要求1所述的方法,其特征在于,按照所述预设配置信息在所述三维模型的骨骼上加载所述待挂接的检测体模型包括:
采用所述第一模型标识加载所述三维模型;
依据所述检测体存储路径读取所述待挂接的检测体模型;
按照所述挂接点标识将所述待挂接的检测体模型挂接至所述三维模型的骨骼上。
3.根据权利要求2所述的方法,其特征在于,在按照所述预设配置信息在所述三维模型的骨骼上加载所述待挂接的检测体模型之前,还包括:
在所述三维模型的骨骼上设置挂接点,确定所述挂接点标识;
在所述三维模型的运动状态发生改变时,通过所述挂接点调整所述待挂接的检测体模型的位置。
4.根据权利要求3所述的方法,其特征在于,通过所述挂接点调整所述待挂接的检测体模型的位置包括:
将所述待挂接的检测体模型对应的第一世界坐标与挂接骨骼的初始逆变换矩阵相乘,得到与所述待挂接的检测体模型对应的本地坐标;
将所述本地坐标与所述挂接骨骼的运动累积变换矩阵相乘,得到与所述待挂接的检测体模型对应的第二世界坐标。
5.根据权利要求1所述的方法,其特征在于,通过所述视点所在位置与所述触摸点所在位置确定所述关联的检测体模型包括:
以所述视点所在位置为起点,向所述触摸点所在位置的方向上发射一条射线,判断是否存在与所述射线相交的检测体模型;
将与所述触摸点距离最近的首次相交的检测体模型确定为所述关联的检测体模型。
6.根据权利要求1所述的方法,其特征在于,根据所述关联的检测体模型获取所述部位标识包括:
获取所述关联的检测体模型的模型标识,其中,所述关联的检测体模型的模型标识是由所述三维模型的第一模型标识与所述部位标识组成;
对所述关联的检测体模型的模型标识进行解析,提取所述部位标识。
7.根据权利要求1所述的方法,其特征在于,执行与所述部位标识对应的响应操作包括:
通过所述三维模型的第一模型标识和所述部位标识获取对应的响应信息;
根据所述响应信息触发执行对应的响应操作。
8.一种三维模型的部位点击处理装置,其特征在于,包括:
加载模块,用于按照预设配置信息在三维模型的骨骼上加载待挂接的检测体模型;
第一确定模块,用于通过视点所在位置与触摸点所在位置确定关联的检测体模型,其中,所述触摸点为触摸介质与显示界面的接触点;
获取模块,用于根据所述关联的检测体模型获取所述三维模型上点击命中的部位标识;
执行模块,用于执行与所述部位标识对应的响应操作;
其中,所述预设配置信息包括:第一模型标识、检测体存储路径、挂接点标识,所述装置还包括:第二确定模块,用于根据所述三维模型在当前游戏场景下所归属的互动类型确定所述三维模型的类别;第二设置模块,用于将所述待挂接的检测体模型的第二模型标识设置为所述第一模型标识与挂接骨骼对应的部位标识的组合;第三设置模块,用于根据所述当前游戏场景的互动情况设置所述待挂接的检测体模型的检测标志位,其中,所述检测标志位用于表示所述待挂接的检测体模型在所述当前游戏场景是否参与互动。
9.根据权利要求8所述的装置,其特征在于,所述加载模块包括:
加载单元,用于采用所述第一模型标识加载所述三维模型;
读取单元,用于依据所述检测体存储路径读取所述待挂接的检测体模型;
挂接单元,用于按照所述挂接点标识将所述待挂接的检测体模型挂接至所述三维模型的骨骼上。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第一设置模块,用于在所述三维模型的骨骼上设置挂接点,确定所述挂接点标识;
调整模块,用于在所述三维模型的运动状态发生改变时,通过所述挂接点调整所述待挂接的检测体模型的位置。
11.根据权利要求10所述的装置,其特征在于,所述调整模块包括:
第一计算单元,用于将所述待挂接的检测体模型对应的第一世界坐标与挂接骨骼的初始逆变换矩阵相乘,得到与所述待挂接的检测体模型对应的本地坐标;
第二计算单元,用于将所述本地坐标与所述挂接骨骼的运动累积变换矩阵相乘,得到与所述待挂接的检测体模型对应的第二世界坐标。
12.根据权利要求8所述的装置,其特征在于,第一确定模块包括:
判断单元,用于以所述视点所在位置为起点,向所述触摸点所在位置的方向上发射一条射线,判断是否存在与所述射线相交的检测体模型;
确定单元,用于将与所述触摸点距离最近的首次相交的检测体模型确定为所述关联的检测体模型。
13.根据权利要求8所述的装置,其特征在于,所述获取模块包括:
第一获取单元,用于获取所述关联的检测体模型的模型标识,其中,所述关联的检测体模型的模型标识是由所述三维模型的第一模型标识与所述部位标识组成;
解析单元,用于对所述关联的检测体模型的模型标识进行解析,提取所述部位标识。
14.根据权利要求8所述的装置,其特征在于,所述执行模块包括:
第二获取单元,用于通过所述三维模型的第一模型标识和所述部位标识获取对应的响应信息;
执行单元,用于根据所述响应信息触发执行对应的响应操作。
15.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7中任意一项所述的三维模型的部位点击处理方法。
16.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至7中任意一项所述的三维模型的部位点击处理方法。
17.一种终端,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序包括用于执行权利要求1至7中任意一项所述的三维模型的部位点击处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710199805.7A CN106960475B (zh) | 2017-03-30 | 2017-03-30 | 三维模型的部位点击处理方法及装置、存储介质和处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710199805.7A CN106960475B (zh) | 2017-03-30 | 2017-03-30 | 三维模型的部位点击处理方法及装置、存储介质和处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106960475A CN106960475A (zh) | 2017-07-18 |
CN106960475B true CN106960475B (zh) | 2020-05-05 |
Family
ID=59471736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710199805.7A Active CN106960475B (zh) | 2017-03-30 | 2017-03-30 | 三维模型的部位点击处理方法及装置、存储介质和处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106960475B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108295472A (zh) * | 2017-12-28 | 2018-07-20 | 深圳市创梦天地科技股份有限公司 | 一种组合模型的拼接方法及终端 |
CN110075523B (zh) * | 2019-04-30 | 2020-04-17 | 网易(杭州)网络有限公司 | 动作生成方法、装置、电子设备和计算机可读介质 |
CN110427544B (zh) * | 2019-09-09 | 2023-05-26 | 成都西山居互动娱乐科技有限公司 | 一种数据采集方法、装置、计算设备及存储介质 |
CN111275812B (zh) * | 2020-01-19 | 2023-10-17 | 北京恒华伟业科技股份有限公司 | 一种数据展示方法、装置及电子设备 |
CN112121417B (zh) * | 2020-09-30 | 2022-04-15 | 腾讯科技(深圳)有限公司 | 虚拟场景中的事件处理方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885786A (zh) * | 2014-04-10 | 2014-06-25 | 南京长观信息科技有限公司 | 一种3d场景互动模型 |
CN104606887A (zh) * | 2014-12-30 | 2015-05-13 | 北京像素软件科技股份有限公司 | 一种碰撞判定方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006122241A (ja) * | 2004-10-27 | 2006-05-18 | Nintendo Co Ltd | ゲーム装置およびゲームプログラム |
-
2017
- 2017-03-30 CN CN201710199805.7A patent/CN106960475B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885786A (zh) * | 2014-04-10 | 2014-06-25 | 南京长观信息科技有限公司 | 一种3d场景互动模型 |
CN104606887A (zh) * | 2014-12-30 | 2015-05-13 | 北京像素软件科技股份有限公司 | 一种碰撞判定方法 |
Non-Patent Citations (1)
Title |
---|
《风湿性心脏病自诊软件的设计与实现》;任玉;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170215(第2期);正文第56-57页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106960475A (zh) | 2017-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106960475B (zh) | 三维模型的部位点击处理方法及装置、存储介质和处理器 | |
US11532172B2 (en) | Enhanced training of machine learning systems based on automatically generated realistic gameplay information | |
US10481689B1 (en) | Motion capture glove | |
CN108273265A (zh) | 虚拟对象的显示方法及装置 | |
CN112569611B (zh) | 互动信息显示方法、装置、终端及存储介质 | |
CN106683193B (zh) | 一种三维模型的设计方法和设计装置 | |
CN111957040B (zh) | 遮挡位置的检测方法、装置、处理器及电子装置 | |
CN106462725A (zh) | 监测游戏场所的活动的系统和方法 | |
CN102201099A (zh) | 基于运动的交互式购物环境 | |
CN103530495A (zh) | 增强现实仿真连续体 | |
CN102135798A (zh) | 仿生学运动 | |
CN107038455A (zh) | 一种图像处理方法及装置 | |
CN110389703A (zh) | 虚拟物品的获取方法、装置、终端和存储介质 | |
US20170084071A1 (en) | Dynamic Remapping of Components of a Virtual Skeleton | |
EP3048605A1 (en) | Information processing device, information processing method, and computer program | |
RU2643444C2 (ru) | Визуализация и точность воспроизведения на основе внимания | |
JP2023552772A (ja) | 仮想アイテムの切り替え方法、装置、端末及びコンピュータプログラム | |
CN106651498A (zh) | 一种信息处理方法及装置 | |
CN111054070A (zh) | 基于游戏的商品展示方法、装置、终端及存储介质 | |
KR20220085038A (ko) | Ai 기반 주방 행동 분석형 위생 관리 시스템 | |
CN113952709A (zh) | 游戏交互的方法及装置、存储介质、电子设备 | |
CN117974249A (zh) | 一种基于虚拟世界的服装搭配方法、装置、系统和介质 | |
CN106730834A (zh) | 游戏数据处理方法以及装置 | |
CN111068325B (zh) | 一种游戏场景中的物品采集方法、装置、设备和存储介质 | |
CN114327063A (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 |