1.本发明涉及虚拟现实技术领域,特别涉及一种基于虚拟场景的工具操作方法、系统、存储介质及设备。
背景技术:2.虚拟现实技术是仿真技术的一个重要方向,是仿真技术与计算机图形学人机接口技术、多媒体技术、传感技术和网络技术等多种技术的集合,是一门富有挑战性的学科交叉前沿技术和研究领域。虚拟现实技术能通过人为建模十分真实地展示出各种不同的场景,用户足不出户就可以达到在不同场景游玩的沉浸式体验。
3.在vr游戏中,一般会有很多游戏场景及主题,例如动作搏斗场景以及机车修理场景等,在每一场景中,往往会涉及使用工具的切换以便更好的完成角色,例如,在机车修理场景中,若当前在使用扳手对汽车进行修理,而后需要更换为锤子修理时,就需要通过操作将扳手在虚拟手中丢弃以便在虚拟手中生成需要的锤子,在此过程中,机车修理场景就属于一个具体的场景模型,虚拟手可以理解为抓手模型,汽车可以理解为当前工具作用对象模型,而扳手以及锤子都可理解为工具模型。
4.现有技术当中,一般在场景模型中设置不同的工具按钮,当需要更换工具时,需要通过抓手模型点击工具按钮,而后才能在抓手模型中生成与工具按钮相对应的工具模型,此种更换操作很麻烦,造成很差的用户体验。
技术实现要素:5.基于此,本发明的目的是提供一种基于虚拟场景的工具操作方法、系统、存储介质及设备,用于解决现有技术中需要通过抓手模型点击工具按钮才能在抓手模型中生成与工具按钮相对应的工具模型的工具更换方法,操作麻烦,用户体验度差的问题。
6.本发明一方面提供一种基于虚拟场景的工具操作方法,所述虚拟场景包括场景模型、设于所述场景模型内的多个工具模型及工具作用对象模型,所述虚拟场景还包括设于所述场景模型内的多个抓手模型,每一抓手模型对应一种工具模型的抓取手姿以抓取所述工具模型,所述方法包括:
7.分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在所述场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取所述获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断所述抓手-工具距离值是否符合预设值;
8.当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型;
9.通过所述目标抓手模型移动所述目标工具模型,获取所述目标工具模型与所述当前工具作用对象模型的工具-对象距离值,并判断所述工具-对象距离值是否符合预设值;
10.若所述工具-对象距离值符合预设值,则操作所述目标工具模型以使所述目标工
具模型作用于所述工具作用对象模型。
11.上述基于虚拟场景的工具操作方法,通过分别获取每一抓手模型、当前工具作用对象模型以及每一工具模型在场景模型中的坐标数据,为精准定位场景中每一单元的位置提供了数据支撑,为后续步骤中的距离计算提供计算基础,当需要抓取工具模型时,根据对应坐标数据获取获取当前抓手模型与目标工具模型的抓手-工具距离值,当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型,通过计算抓手-工具距离值使得目标工具模型能够自动更换至抓手模型中,且能够根据目标工具模型的不同而自动更换与之相对应的目标抓手模型,使得整个更换过程更加智能化,替换了传统的需要抓手模型点击工具按钮才能实现工具更换的方案,使得工具更换更加智能与便捷,提高了用户体验满意度;
12.再者,通过目标抓手模型移动目标工具模型,获取目标工具模型与当前工具作用对象模型的工具-对象距离值,当工具-对象距离值符合预设值时,则操作目标工具模型以使目标工具模型作用于工具作用对象模型,通过计算工具-对象距离值,使得目标工具模型可以直接作用于工具作用对象模型中,避免其他多余步骤,进一步提高了使用便捷性,解决了现有技术中需要通过抓手模型点击工具按钮才能在抓手模型中生成与工具按钮相对应的工具模型的工具更换方法,操作麻烦,用户体验度差的问题。
13.另外,根据本发明上述的基于虚拟场景的工具操作方法,还可以具有如下附加的技术特征:
14.进一步地,所述虚拟场景还包括设于所述场景模型内工具模型生成按钮,每一工具模型生成按钮对应生成一工具模型,当需要抓取工具模型时,所述方法还包括:
15.分别获取抓手模型、当前工具作用对象模型、工具模型以及工具模型生成按钮在所述场景模型中的坐标数据,根据对应坐标数据获取所述获取抓手模型与所述工具模型生成按钮的抓手-按钮距离值,并判断所述抓手-按钮距离值是否符合预设值;
16.当所述抓手-按钮距离值符合预设值时,在所述抓手模型中生成与所述工具模型生成按钮对应的目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型。
17.进一步地,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型的步骤包括:
18.在所述抓手模型中生成所述目标工具模型,判断当前抓手模型的抓取手姿是否符合所述目标工具模型;
19.若不符合,则根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型。
20.进一步地,操作所述目标工具模型以使所述目标工具模型作用于所述工具作用对象模型的步骤之后包括:
21.当需要丢弃目标工具模型时,获取目标工具模型丢弃时的速度矢量,所述速度矢量包括横向速度及纵向速度;
22.根据所述横向速度、所述纵向速度以及重力加速度计算得到目标工具模型在落地
时的最终速度矢量,并根据最终速度矢量得到所述目标工具模型的丢弃地以将目标工具模型丢弃。
23.进一步地,当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型的步骤包括:
24.当所述抓手-工具距离值符合预设值时,发送信息传递函数至目标工具模型的承载载体以使所述载体能够获取抓手模型的抓取信息,并判断所述抓取信息能否触发所述载体的绑定函数;
25.若能触发所述载体的绑定函数,则获取所述抓手模型的抓取手姿,并根据与所述抓手模型对应的抓手手姿获取目标工具模型,将所述目标工具模型绑定于所述抓手模型中。
26.进一步地,判断所述抓取信息能否触发所述载体的绑定函数的步骤之后还包括:
27.若未能触发所述载体的绑定函数,则抓取信息与所述绑定函数不匹配,无法获取目标工具模型。
28.本发明另一方面提供一种基于虚拟场景的工具操作系统,所述系统包括:
29.分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在所述场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取所述获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断所述抓手-工具距离值是否符合预设值;
30.当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型;
31.通过所述目标抓手模型移动所述目标工具模型,获取所述目标工具模型与所述当前工具作用对象模型的工具-对象距离值,并判断所述工具-对象距离值是否符合预设值;
32.若所述工具-对象距离值符合预设值,则操作所述目标工具模型以使所述目标工具模型作用于所述工具作用对象模型。
33.本发明另一方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述的基于虚拟场景的工具操作方法。
34.本发明另一方面还提供一种数据处理设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述的基于虚拟场景的工具操作方法。
附图说明
35.图1为本发明第一实施例中基于虚拟场景的工具操作方法的流程图;
36.图2为本发明第二实施例中基于虚拟场景的工具操作方法的流程图;
37.图3为本发明第二实施例中步骤s202的步骤细化图;
38.图4为本发明第二实施例中基于虚拟场景的工具操作系统的系统框图;
39.如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
40.为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中
给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
41.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
42.本技术提供一种基于虚拟场景的工具操作方法,所述虚拟场景包括场景模型、设于所述场景模型内的多个工具模型及工具作用对象模型,所述虚拟场景还包括设于所述场景模型内的多个抓手模型,每一抓手模型对应一种工具模型的抓取手姿以抓取所述工具模型。
43.实施例一
44.请参阅图1,所示为本发明第一实施例中的基于虚拟场景的工具操作方法,所述方法包括步骤s101至s104:
45.s101、分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断抓手-工具距离值是否符合预设值。
46.为了准确获取抓手模型相对当前工具作用对象模型以及每一工具模型的位置关系,系统在进行数据处理之前,需先获获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在场景模型中的坐标数据,从而建立起相对位置关系,以便进行后续步骤,获取相对距离值。
47.s102、当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型。
48.当用户需要使用某一工具时,通过在场景模型中的代表用户的抓手模型去靠近目标工具模型,当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,具体的,抓手-工具的距离值预设值可以根据实际场景进行设计,例如距离为0时,在抓手模型中生成目标工具模型。
49.由于每一次切换工具时,当前抓手模型中的手姿不一定满足目标工具模型的要求,即当前抓手模型中的手姿不一定能够完整匹配目标工具模型,故为了有更好的体验感和观感,在进行切换工具模型时,抓手模型中的相对抓手手姿也要进行相应调整以更好的适应目标工具模型。
50.s103、通过目标抓手模型移动目标工具模型,获取目标工具模型与当前工具作用对象模型的工具-对象距离值,并判断工具-对象距离值是否符合预设值。
51.当抓手模型获取到目标工具模型时,即将目标工具模组作用在当前工具作用对象模型上以进行使用,例如,当前场景为机车修理场景,即将重新获取到的工具模型用于汽车上以对其进行修理。
52.s104、若工具-对象距离值符合预设值,则操作目标工具模型以使目标工具模型作用于工具作用对象模型。
53.为了能够让目标工具模型更准确的作用于工具作用对象模型,在实际使用过程
中,需对目标工具模型与当前工具作用对象模型进行距离把握,以免目标工具模型过早或过晚的作用于当前工具作用对象模型中,影响用户体验。
54.具体的,工具-对象的距离值预设值可以根据实际场景进行设计,例如距离为0时,则目标工具模型作用于工具作用对象模型。
55.综上,本发明上述实施例当中的基于虚拟场景的工具操作方法,通过分别获取每一抓手模型、当前工具作用对象模型以及每一工具模型在场景模型中的坐标数据,为精准定位场景中每一单元的位置提供了数据支撑,为后续步骤中的距离计算提供计算基础,当需要抓取工具模型时,根据对应坐标数据获取获取当前抓手模型与目标工具模型的抓手-工具距离值,当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型,通过计算抓手-工具距离值使得目标工具模型能够自动更换至抓手模型中,且能够根据目标工具模型的不同而自动更换与之相对应的目标抓手模型,使得整个更换过程更加智能化,替换了传统的需要抓手模型点击工具按钮才能实现工具更换的方案,使得工具更换更加智能与便捷,提高了用户体验满意度,再通过目标抓手模型移动目标工具模型,获取目标工具模型与当前工具作用对象模型的工具-对象距离值,当工具-对象距离值符合预设值时,则操作目标工具模型以使目标工具模型作用于工具作用对象模型,通过计算工具-对象距离值,使得目标工具模型可以直接作用于工具作用对象模型中,避免其他多余步骤,进一步提高了使用便捷性,解决了现有技术中需要通过抓手模型点击工具按钮才能在抓手模型中生成与工具按钮相对应的工具模型的工具更换方法,操作麻烦,用户体验度差的问题。
56.实施例二
57.请参阅图2,所示为本发明第二实施例中的基于虚拟场景的工具操作方法,方法包括步骤s201至s206:
58.s201、分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断抓手-工具距离值是否符合预设值。
59.s202、当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型。
60.为了保证在抓手模型中生成正确的目标工具模型,作为一个具体示例,当抓手-工具距离值不大于0时,在抓手模型中生成目标工具模型。
61.为了进一步判断抓手模型的抓取手姿是否符合目标工具模型的抓取要求,以便更好的抓取目标工具模型,具体的,如图3所示,上述步骤包括s2021-s2022:
62.s2021、在抓手模型中生成目标工具模型,判断当前抓手模型的抓取手姿是否符合目标工具模型。
63.若当前抓手模型的抓取手姿不符合目标工具模型,则执行步骤s2022;
64.s2022、根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型。
65.在本技术的一些可选实施例中,当抓手-工具距离值符合预设值时,在抓手模型中
生成目标工具模型的步骤包括:
66.当抓手-工具距离值符合预设值时,发送信息传递函数至目标工具模型的承载载体以使载体能够获取抓手模型的抓取信息,并判断抓取信息能否触发载体的绑定函数;
67.若能触发载体的绑定函数,则获取抓手模型的抓取手姿,并根据与抓手模型对应的抓手手姿获取目标工具模型,将目标工具模型绑定于抓手模型中;
68.若未能触发载体的绑定函数,则抓取信息与绑定函数不匹配,无法获取目标工具模型。
69.作为本技术的一个具体示例,以用户a拾取用户b手上的工具模型为例对上述步骤进行说明:获取工具实体三维模型在某用户a手部骨骼的消息;根据工具实体三维模型在某用户a手部骨骼的消息,另外一名用户b用手部骨骼触碰该工具实体三维模型,并发送信息传递函数,向用户a发送抓取工具实体三维模型的消息,用户a得到消息后,松开工具实体三维模型并向用户b发送松开工具的消息,用户b得到消息后触发工具实体三维模型绑定函数,获得工具实体三维模型在手部骨骼的手势类型,再将工具实体三维模型绑定到手部骨骼中。
70.s203、通过目标抓手模型移动目标工具模型,获取目标工具模型与当前工具作用对象模型的工具-对象距离值,并判断工具-对象距离值是否符合预设值。
71.s204、若工具-对象距离值符合预设值,则操作目标工具模型以使目标工具模型作用于工具作用对象模型。
72.为了保证目标工具模型能够准确的作用于工具作用对象模型上,作为一个具体示例,当工具-对象距离值不大于0时,将目标工具模型作用于工具作用对象模型上。
73.s205、当需要丢弃目标工具模型时,获取目标工具模型丢弃时的速度矢量,速度矢量包括横向速度及纵向速度。
74.s206、根据横向速度、纵向速度以及重力加速度计算得到目标工具模型在落地时的最终速度矢量,并根据最终速度矢量得到目标工具模型的丢弃地以将目标工具模型丢弃。
75.具体的,以手部骨骼代表抓手模型为例对上述步骤进行说明:
76.获取手部骨骼在场景模型中的三维坐标;
77.根据手部骨骼在场景模型中的三维坐标,结合工具丢弃时工具模型的速度矢量,加上重力加速度实现工具模型原地落地或抛物线坠落等效果。
78.需要进一步说明的是,本技术中涉及的抓手模型、当前工具作用对象模型以及每一工具模型均为三维模型,获取的坐标数据为三维坐标数据。
79.为了在工具切换时,提高对目标工具的指引,以便用户对更换后的工具模型心中有数,在本发明的一些可选实施例中,虚拟场景还可以包括设于场景模型内工具模型生成按钮,每一工具模型生成按钮对应生成一工具模型,从而提高用户的使用体验感,也避免在切换工具时出现无法一次切换到位、需要多次切换而造成用户体验度差的情况。
80.在切换工具时,例如可以将抓手模型画圈设置为工具切换的切换信号,当系统识别到抓手模型画圈时,即认为此时需要对抓手模型中的当前工具进行切换。例如,若用户心中的下一目标工具为斜口钳,而在切换时,由于缺乏切换指引,系统无法准确获知用户的下一目标工具为斜口钳,此时,当虚拟场景的场景模型内设有工具模型生成按钮时,工具模型
生成按钮可以为系统提供工具切换指引,以提高工具切换时的用户体验度。
81.具体的,当需要抓取工具模型时,方法还包括:
82.分别获取抓手模型、当前工具作用对象模型、工具模型以及工具模型生成按钮在场景模型中的坐标数据,根据对应坐标数据获取获取抓手模型与工具模型生成按钮的抓手-按钮距离值,并判断抓手-按钮距离值是否符合预设值;
83.当抓手-按钮距离值符合预设值时,在抓手模型中生成与工具模型生成按钮对应的目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型。
84.需要指出的是,本发明第二实施例所提供的方法,其实现原理及产生的一些技术效果和第一实施例相同,为简要描述,本实施例未提及之处,可参考第一实施例中相应内容。
85.综上,本发明上述实施例当中的基于虚拟场景的工具操作方法,通过分别获取每一抓手模型、当前工具作用对象模型以及每一工具模型在场景模型中的坐标数据,为精准定位场景中每一单元的位置提供了数据支撑,为后续步骤中的距离计算提供计算基础,当需要抓取工具模型时,根据对应坐标数据获取获取当前抓手模型与目标工具模型的抓手-工具距离值,当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型,通过计算抓手-工具距离值使得目标工具模型能够自动更换至抓手模型中,且能够根据目标工具模型的不同而自动更换与之相对应的目标抓手模型,使得整个更换过程更加智能化,替换了传统的需要抓手模型点击工具按钮才能实现工具更换的方案,使得工具更换更加智能与便捷,提高了用户体验满意度,再通过目标抓手模型移动目标工具模型,获取目标工具模型与当前工具作用对象模型的工具-对象距离值,当工具-对象距离值符合预设值时,则操作目标工具模型以使目标工具模型作用于工具作用对象模型,通过计算工具-对象距离值,使得目标工具模型可以直接作用于工具作用对象模型中,避免其他多余步骤,进一步提高了使用便捷性,解决了现有技术中需要通过抓手模型点击工具按钮才能在抓手模型中生成与工具按钮相对应的工具模型的工具更换方法,操作麻烦,用户体验度差的问题。
86.实施例三
87.请参阅图4,所示为本发明第三实施例中的基于虚拟场景的工具操作系统,所述系统包括:
88.坐标数据获取模块,用于分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在所述场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取所述获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断所述抓手-工具距离值是否符合预设值;
89.目标抓手模型获取模块,用于当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型;
90.判断模块,用于通过所述目标抓手模型移动所述目标工具模型,获取所述目标工具模型与所述当前工具作用对象模型的工具-对象距离值,并判断所述工具-对象距离值是
否符合预设值;
91.第一执行模块,用于当所述工具-对象距离值符合预设值时,则操作所述目标工具模型以使所述目标工具模型作用于所述工具作用对象模型。
92.在一些可选实施例中,所述系统还包括:
93.抓手-按钮距离值获取模块,用于分别获取抓手模型、当前工具作用对象模型、工具模型以及工具模型生成按钮在所述场景模型中的坐标数据,根据对应坐标数据获取所述获取抓手模型与所述工具模型生成按钮的抓手-按钮距离值,并判断所述抓手-按钮距离值是否符合预设值;
94.第二执行模块,用于当所述抓手-按钮距离值符合预设值时,在所述抓手模型中生成与所述工具模型生成按钮对应的目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型。
95.在一些可选实施例中,目标抓手模型获取模块包括:
96.第一判断单元,用于在所述抓手模型中生成所述目标工具模型,判断当前抓手模型的抓取手姿是否符合所述目标工具模型;
97.第一执行单元,若当前抓手模型的抓取手姿不符合所述目标工具模型时,则根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型。
98.在一些可选实施例中,第一执行模块之后包括:
99.速度矢量获取模块,用于当需要丢弃目标工具模型时,获取目标工具模型丢弃时的速度矢量,所述速度矢量包括横向速度及纵向速度;
100.丢弃模块,用于根据所述横向速度、所述纵向速度以及重力加速度计算得到目标工具模型在落地时的最终速度矢量,并根据所述最终速度矢量得到所述目标工具模型的丢弃地以将目标工具模型丢弃。
101.在一些可选实施例中,目标抓手模型获取模块包括:
102.第二判断单元,用于当所述抓手-工具距离值符合预设值时,发送信息传递函数至目标工具模型的承载载体以使所述载体能够获取抓手模型的抓取信息,并判断所述抓取信息能否触发所述载体的绑定函数;
103.第二执行单元,用于当能触发所述载体的绑定函数时,则获取所述抓手模型的抓取手姿,并根据与所述抓手模型对应的抓手手姿获取目标工具模型,将所述目标工具模型绑定于所述抓手模型中。
104.第三执行单元,用于当未能触发所述载体的绑定函数,则抓取信息与所述绑定函数不匹配,无法获取目标工具模型。
105.综上,本发明上述实施例当中的基于虚拟场景的工具操作系统,通过分别获取每一抓手模型、当前工具作用对象模型以及每一工具模型在场景模型中的坐标数据,为精准定位场景中每一单元的位置提供了数据支撑,为后续步骤中的距离计算提供计算基础,当需要抓取工具模型时,根据对应坐标数据获取获取当前抓手模型与目标工具模型的抓手-工具距离值,当抓手-工具距离值符合预设值时,在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得抓取手姿符合目标工具模型的目标抓手模型,通过计算抓手-工具距离值使得目标工具模型能够自动更换至抓手模型中,
且能够根据目标工具模型的不同而自动更换与之相对应的目标抓手模型,使得整个更换过程更加智能化,替换了传统的需要抓手模型点击工具按钮才能实现工具更换的方案,使得工具更换更加智能与便捷,提高了用户体验满意度,再通过目标抓手模型移动目标工具模型,获取目标工具模型与当前工具作用对象模型的工具-对象距离值,当工具-对象距离值符合预设值时,则操作目标工具模型以使目标工具模型作用于工具作用对象模型,通过计算工具-对象距离值,使得目标工具模型可以直接作用于工具作用对象模型中,避免其他多余步骤,进一步提高了使用便捷性,解决了现有技术中需要通过抓手模型点击工具按钮才能在抓手模型中生成与工具按钮相对应的工具模型的工具更换方法,操作麻烦,用户体验度差的问题。
106.此外,本发明的实施例还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述实施例中方法的步骤。
107.此外,本发明的实施例还提出一种数据处理设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述实施例中方法的步骤。
108.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
109.计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
110.应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
111.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
112.尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不
脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
技术特征:1.一种基于虚拟场景的工具操作方法,其特征在于,所述虚拟场景包括场景模型、设于所述场景模型内的多个工具模型及工具作用对象模型,所述虚拟场景还包括设于所述场景模型内的多个抓手模型,每一抓手模型对应一种工具模型的抓取手姿以抓取所述工具模型,所述方法包括:分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在所述场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取所述获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断所述抓手-工具距离值是否符合预设值;当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型;通过所述目标抓手模型移动所述目标工具模型,获取所述目标工具模型与所述当前工具作用对象模型的工具-对象距离值,并判断所述工具-对象距离值是否符合预设值;若所述工具-对象距离值符合预设值,则操作所述目标工具模型以使所述目标工具模型作用于所述工具作用对象模型。2.根据权利要求1所述的基于虚拟场景的工具操作方法,其特征在于,所述虚拟场景还包括设于所述场景模型内工具模型生成按钮,每一工具模型生成按钮对应生成一工具模型,当需要抓取工具模型时,所述方法还包括:分别获取抓手模型、当前工具作用对象模型、工具模型以及工具模型生成按钮在所述场景模型中的坐标数据,根据对应坐标数据获取所述获取抓手模型与所述工具模型生成按钮的抓手-按钮距离值,并判断所述抓手-按钮距离值是否符合预设值;当所述抓手-按钮距离值符合预设值时,在所述抓手模型中生成与所述工具模型生成按钮对应的目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型。3.根据权利要求1所述的基于虚拟场景的工具操作方法,其特征在于,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型的步骤包括:在所述抓手模型中生成所述目标工具模型,判断当前抓手模型的抓取手姿是否符合所述目标工具模型;若不符合,则根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型。4.根据权利要求1所述的基于虚拟场景的工具操作方法,其特征在于,操作所述目标工具模型以使所述目标工具模型作用于所述工具作用对象模型的步骤之后包括:当需要丢弃目标工具模型时,获取目标工具模型丢弃时的速度矢量,所述速度矢量包括横向速度及纵向速度;根据所述横向速度、所述纵向速度以及重力加速度计算得到目标工具模型在落地时的最终速度矢量,并根据所述最终速度矢量得到所述目标工具模型的丢弃地以将目标工具模型丢弃。5.根据权利要求1所述的基于虚拟场景的工具操作方法,其特征在于,当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型的步骤包括:
当所述抓手-工具距离值符合预设值时,发送信息传递函数至目标工具模型的承载载体以使所述载体能够获取抓手模型的抓取信息,并判断所述抓取信息能否触发所述载体的绑定函数;若能触发所述载体的绑定函数,则获取所述抓手模型的抓取手姿,并根据与所述抓手模型对应的抓手手姿获取目标工具模型,将所述目标工具模型绑定于所述抓手模型中。6.根据权利要求5所述的基于虚拟场景的工具操作方法,其特征在于,判断所述抓取信息能否触发所述载体的绑定函数的步骤之后还包括:若未能触发所述载体的绑定函数,则抓取信息与所述绑定函数不匹配,无法获取目标工具模型。7.一种基于虚拟场景的工具操作系统,其特征在于,所述系统包括:坐标数据获取模块,用于分别获取每一抓手模型、当前工具作用对象模型、以及每一工具模型在所述场景模型中的坐标数据,当需要抓取工具模型时,根据对应坐标数据获取所述获取当前抓手模型与目标工具模型的抓手-工具距离值,并判断所述抓手-工具距离值是否符合预设值;目标抓手模型获取模块,用于当所述抓手-工具距离值符合预设值时,在所述抓手模型中生成所述目标工具模型,并根据所述目标工具模型的使用方式转换所述抓手模型的抓取手姿以获得抓取手姿符合所述目标工具模型的目标抓手模型;判断模块,用于通过所述目标抓手模型移动所述目标工具模型,获取所述目标工具模型与所述当前工具作用对象模型的工具-对象距离值,并判断所述工具-对象距离值是否符合预设值;第一执行模块,用于当所述工具-对象距离值符合预设值时,则操作所述目标工具模型以使所述目标工具模型作用于所述工具作用对象模型。8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一所述的基于虚拟场景的工具操作方法。9.一种数据处理设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-6任一所述的基于虚拟场景的工具操作方法。
技术总结本发明提供一种基于虚拟场景的工具操作方法、系统、存储介质及设备,方法包括:获取每一模型在场景模型中的坐标数据,根据对应坐标数据获取获取并判断当前抓手模型与目标工具模型的抓手-工具距离值是否符合预设值;若符合则在抓手模型中生成目标工具模型,并根据目标工具模型的使用方式转换抓手模型的抓取手姿以获得目标抓手模型;通过目标抓手模型移动目标工具模型,获取并判断目标工具模型与当前工具作用对象模型的工具-对象距离值是否符合预设值;若符合则操作目标工具模型作用于工具作用对象模型。本申请通过计算抓手-工具距离值使得目标工具模型能够自动更换至抓手模型中,使得整个更换过程更加智能化,提高了用户体验满意度。体验满意度。体验满意度。
技术研发人员:吴聆捷 石卉 陈旭 张俊达 戴劲
受保护的技术使用者:江西泰豪动漫职业学院
技术研发日:2022.07.11
技术公布日:2022/11/1