1.本发明涉及增强现实技术领域,特别是涉及一种增强现实的骰子投掷方法、一种增强现实的骰子投掷装置、一种电子设备和一种计算机可读存储介质。
背景技术:2.增强现实技术(augmented reality,简称ar),是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3d模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。
3.随着智能手机的普及,基于智能手机的app(应用程序,application的缩写)涉及到各行各业,人们通过app可以做各种各样的事情。在各种app中植入的小游戏也越来越多,类似大富翁之类的小游戏比比皆是,而这种类型的小游戏中有一个重要的游戏动作是摇骰子。通常情况下,游戏界面上显示有虚拟骰子,在用户点击摇动按钮时仅需要做一个骰子旋转的动画,然后将骰子旋转结果定格在一个预先设计的画面即可。由于用户无法实际参与摇骰子过程,会带来一种不太真实的感觉,而且由于缺少用户交互,也使得游戏趣味性大大降低。
技术实现要素:4.鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种增强现实的骰子投掷方法和相应的一种增强现实的骰子投掷装置、一种电子设备,以及一种计算机可读存储介质。
5.本发明实施例公开了一种增强现实的骰子投掷方法,应用于移动终端,所述方法包括:
6.响应于骰子投掷指令,开启增强现实功能页面;
7.获取所述移动终端当前拍摄的真实场景,并在所述增强现实功能页面中显示对所述真实场景渲染后生成的增强现实场景;
8.从所述增强现实场景中确定目标平面,并在所述目标平面上方的预设位置生成一虚拟骰子模型;
9.当从所述增强现实场景中识别到用户手部的姿态动作信息满足预设的投掷触发条件时,根据所述姿态动作信息对所述虚拟骰子模型进行投掷;
10.从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果。
11.可选地,所述当从所述增强现实场景中识别到用户手部的姿态动作信息满足预设的投掷触发条件时,根据所述姿态动作信息对所述虚拟骰子模型进行投掷,包括:
12.当识别到所述姿态动作信息满足预设的手势动作条件时,基于所述姿态动作信息确定所述用户手部的移动速度和移动方向;
13.基于所述移动速度和所述移动方向确定针对所述虚拟骰子模型的运动轨迹;
14.控制所述虚拟骰子模型在所述增强现实功能页面中按照所述运动轨迹运动。
15.可选地,所述基于所述移动速度和所述移动方向确定针对所述虚拟骰子模型的运动轨迹,包括:
16.基于所述移动速度设定所述虚拟骰子模型的质量参数;
17.基于所述移动方向确定所述虚拟骰子模型的运动方向;
18.确定与所述质量参数和所述运动方向对应的所述运动轨迹。
19.可选地,所述当识别到所述姿态动作信息满足预设的手势动作条件时,基于所述姿态动作信息确定所述用户手部的移动速度和移动方向之前,还包括:
20.检测所述增强现实场景中的图像信息;
21.当识别到所述图像信息中包括手部图像信息时,从所述手部图像信息中获取所述姿态动作信息;
22.基于所述姿态动作信息对应的所述移动方向,判断是否满足所述预设的手势动作条件。
23.可选地,所述目标平面为静态物理体,所述虚拟骰子模型为动态物理体,所述增强现实场景的加速度为真实世界的重力加速度。
24.可选地,所述虚拟骰子模型具有弹力属性,所述从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果,包括:
25.在所述虚拟骰子模型按照所述弹力属性从所述目标平面反弹后,从反弹后静止于所述目标平面上的所述虚拟骰子模型中确定所述本轮投掷结果。
26.可选地,所述检测所述增强现实场景中的图像信息,包括:
27.采用预先训练的手部图像识别模型对基于ar引擎提供的所述增强现实场景中的预设数量的图像信息进行检测。
28.本发明实施例还公开了一种增强现实的骰子投掷装置,应用于移动终端,所述装置包括:
29.开启模块,用于响应于骰子投掷指令,开启增强现实功能页面;
30.显示模块,用于获取所述移动终端当前拍摄的真实场景,并在所述增强现实功能页面中显示对所述真实场景渲染后生成的增强现实场景;
31.生成模块,用于从所述增强现实场景中确定目标平面,并在所述目标平面上方的预设位置生成一虚拟骰子模型;
32.投掷模块,用于当从所述增强现实场景中识别到用户手部的姿态动作信息满足预设的投掷触发条件时,根据所述姿态动作信息对所述虚拟骰子模型进行投掷;
33.确定模块,用于从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果。
34.可选地,所述投掷模块,包括:
35.第一确定子模块,用于当识别到所述姿态动作信息满足预设的手势动作条件时,基于所述姿态动作信息确定所述用户手部的移动速度和移动方向;
36.第二确定子模块,用于基于所述移动速度和所述移动方向确定针对所述虚拟骰子模型的运动轨迹;
37.控制子模块,用于控制所述虚拟骰子模型在所述增强现实功能页面中按照所述运动轨迹运动。
38.可选地,所述第二确定子模块,包括:
39.设定单元,用于基于所述移动速度设定所述虚拟骰子模型的质量参数;
40.第一确定单元,用于基于所述移动方向确定所述虚拟骰子模型的运动方向;
41.第二确定单元,用于确定与所述质量参数和所述运动方向对应的所述运动轨迹。
42.可选地,所述投掷模块,还包括:
43.检测子模块,用于检测所述增强现实场景中的图像信息;
44.获取子模块,用于当识别到所述图像信息中包括手部图像信息时,从所述手部图像信息中获取所述姿态动作信息;
45.判断子模块,用于基于所述姿态动作信息对应的所述移动方向,判断是否满足所述预设的手势动作条件。
46.可选地,所述目标平面为静态物理体,所述虚拟骰子模型为动态物理体,所述增强现实场景的加速度为真实世界的重力加速度。
47.可选地,所述虚拟骰子模型具有弹力属性,所述确定模块,包括:
48.第三确定子模块,用于在所述虚拟骰子模型按照所述弹力属性从所述目标平面反弹后,从反弹后静止于所述目标平面上的所述虚拟骰子模型中确定所述本轮投掷结果。
49.可选地,所述检测子模块,包括:
50.检测单元,用于采用预先训练的手部图像识别模型对基于ar引擎提供的所述增强现实场景中的预设数量的图像信息进行检测。
51.本发明实施例还公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的一种增强现实的骰子投掷方法的步骤。
52.本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的一种增强现实的骰子投掷方法的步骤。
53.本发明实施例包括以下优点:
54.在本发明实施例中,可以在增强现实场景中识别目标平面,并在该目标平面上添加虚拟骰子模型,根据用户的手部动作对该虚拟骰子模型进行投掷。通过采用上述方法,提供一种基于ar的通过用户手势触发对虚拟骰子进行投掷的实现方案,通过设计骰子根据不同的用户手势做不同的掉落运动,模拟真实的骰子投掷过程,可以增加骰子投掷过程中的用户交互,大大增加投骰子游戏中的真实性和趣味性。
附图说明
55.图1是本发明实施例提供的一种增强现实的骰子投掷方法的步骤流程图;
56.图2是本发明实施例提供的另一种增强现实的骰子投掷方法的步骤流程图;
57.图3是本发明实施例的一种增强现实的骰子投掷方法的流程图;
58.图4是本发明实施例提供的一种增强现实的骰子投掷装置的结构框图。
具体实施方式
59.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实
施方式对本发明作进一步详细的说明,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
60.当前,在移动终端例如智能手机,平板电脑、游戏机等上的游戏程序中进行摇骰子的游戏动作时,游戏界面上显示有虚拟骰子,在用户点击摇动按钮时仅需要做一个骰子旋转的动画,然后将骰子旋转结果定格在一个预先设计的画面上。上述过程中,用户实际上无法真实参与摇骰子过程,给用户带来一种不太真实的感觉,而且由于缺少用户交互,也使得游戏趣味性大大降低。
61.本发明实施例的核心构思之一在于,可以在增强现实场景中识别目标平面,并在该目标平面上添加虚拟骰子模型,根据用户的手部动作对该虚拟骰子模型进行投掷。通过采用上述方法,提供一种基于ar的通过用户手势触发对虚拟骰子进行投掷的实现方案,通过设计骰子根据不同的用户手势做不同的掉落运动,模拟真实的骰子投掷过程,可以增加骰子投掷过程中的用户交互,大大增加投骰子游戏中的真实性和趣味性。
62.参照图1,示出了本发明实施例提供的一种增强现实的骰子投掷方法的步骤流程图,应用于移动终端,具体可以包括如下步骤:
63.步骤101,响应于骰子投掷指令,开启增强现实功能页面。
64.在本发明实施例中,移动终端可以为智能手机、笔记本、平板电脑、游戏机、pda等各种电子设备。移动终端上安装有游戏应用。其中,游戏应用中具有对骰子进行控制的游戏功能。
65.本技术提供的基于增强现实的骰子投掷方法可以应用于移动终端的游戏应用程序中,也可以作为一个独立的功能应用于移动终端中进行实施。
66.骰子投掷指令可以有多种实施方式,在一种示例中,游戏应用中设置有骰子投掷按钮,当检测到针对该骰子投掷按钮的触控操作时,可以将该触控操作作为骰子投掷指令,此时可以打开增强现实功能页面。本领域技术人员还可以根据实际需要设置骰子投掷指令的其他实施方式,对此,本发明实施例不加以具体限制。
67.其中,增强现实功能页面为可以采用增强现实技术对真实场景进行渲染处理,生成对应的增强现实场景并显示的页面。用户通过增强现实功能页面可以在真实世界中对页面呈现的虚拟对象进行相应的控制操作。
68.举例而言,用户可以在智能手机app的小游戏中点击“3d摇骰子”按钮,触发打开ar页面,页面打开时可以初始化ar场景,具体可以是初始化对应ar引擎下的ar视图(如ios系统为arscnview),并配置该视图的相关属性(包括开启摄像机捕获真实场景、添加灯光、设置物体追踪效果让虚拟物体在真实场景中更加契合等)。
69.步骤102,获取所述移动终端当前拍摄的真实场景,并在所述增强现实功能页面中显示对所述真实场景渲染后生成的增强现实场景。
70.在本发明实施例中,在当前移动终端的屏幕加载增强现实功能页面时,可以同时开启移动终端的摄像头,并通过摄像头获取当前实时拍摄的真实场景。对当前拍摄的真实场景进行渲染生成对应的增强现实场景,并在增强现实功能页面中显示该增强现实场景。
71.步骤103,从所述增强现实场景中确定目标平面,并在所述目标平面上方的预设位置生成一虚拟骰子模型。
72.目标平面用于模拟真实世界中投掷骰子掉落的水平平面。虚拟骰子模型用于模拟真实世界中投掷骰子所用的骰子。在一种示例中,可以预先配置了多种虚拟骰子模型,用户可以根据实际需要选择所需的一种。虚拟骰子模型可以为三维骰子模型。
73.为了方便用户操作,可以在增强现实功能页面中显示提示信息,提示信息用于辅助用户完成基于增强现实的骰子投掷操作。在本步骤中,可以显示提示用户寻找一个水平平面的提示信息。用户在提示信息的指导下会尝试在增强现实场景中寻找一个水平平面。
74.在一种实施方式中,可以通过ar引擎从增强现实场景包含的真实场景中识别平面,并响应于用户的平面选择操作从该增强现实场景中确定最终使用的目标平面。具体而言,移动终端使用ar引擎识别平面,识别到平面后可以在该平面上添加引导效果图,引导效果图用于告知用户识别到的平面的位置和大小,并提示用户可以点击引导效果图确定采用该平面作为目标平面。平面的识别会受到光线等因素的影响,如果未能识别到平面则可以提示用户调整移动终端的位置以识别平面。其中,ar引擎可以为ios系统中的arkit。
75.采用ar引擎进行平面识别,在确定目标平面后可以将目标平面设置为静态物理体,在增强现实技术中,静态物理体是指质量无限大的物体,例如:大地,掉落其上可以反弹或者静止。
76.在本发明实施例中,在目标平面上方的预设位置生成一虚拟骰子模型。虚拟骰子模型可以是预先设计的,可以在增强现实场景中采用该预先设计好的虚拟骰子模型初始化一个ar节点。增强现实场景中的每一个虚拟物体均为一个节点存在于场景中,节点是个抽象的概念,节是个看不见,摸不到的东西,没有几何形状,但是它有位置,以及自身坐标系。通俗地讲,在场景中创建一个添加节点后,就可以在该节点上放置所需的游戏元素,例如:人物模型,灯光,摄像机等。
77.初始化一个ar节点后,可以将该节点添加至目标平面上方的某个位置上,例如可以是添加到距离目标平面一定高度的正上方。即相当于将虚拟骰子模型放置于目标平面上方的某个位置上。可以将加入增强现实场景中的虚拟骰子模型设置为动态物理体。
78.静态物理体和动态物理体实际上是在增强现实场景中为虚拟物体的“物理身体”设置的类型,如果在ios系统中使用arkit引擎,静态物理体为scnphysicsbody staticbody;动态物理体为scnphysicsbody dynamicbody。静态物理体表示物体具有很大的质量,外力对它不起作用;动态物理体表示物体有自己的质量,并且不是无限大,能够受到力的作用。
79.步骤104,当从所述增强现实场景中识别到用户手部的姿态动作信息满足预设的投掷触发条件时,根据所述姿态动作信息对所述虚拟骰子模型进行投掷。
80.在本发明实施例中,预先设置了针对虚拟骰子模型的投掷触发条件,当从增强现实场景中识别到用户手部的姿态动作信息满足该预设的投掷触发条件时,触发对虚拟骰子模型的投掷,且是根据用户手部的姿态动作信息进行投掷的。不同的姿态动作信息可以控制虚拟骰子模型呈现不同的掉落过程,从而可以增强用户在骰子投掷中的真实参与感。
81.步骤105,从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果。
82.虚拟骰子模型掉落到目标平面,并最终静止在目标平面上,可以从该静止的虚拟骰子模型中读取本轮投掷结果。在一种示例中,可以将虚拟投掷模型朝上一面的点数作为本轮的最终投掷结果。
83.此外,在一种优选的实施方法中,可以在掉落过程中为虚拟骰子模型设置在各个方向不规则的旋转动作,该旋转动作的旋转方向和旋转速度是随机的,从而可以模拟真实世界中的骰子掉落过程,并实现真正意义上的随机结果。
84.综上,在本发明实施例中,可以在增强现实场景中识别目标平面,并在该目标平面上添加虚拟骰子模型,根据用户的手部动作对该虚拟骰子模型进行投掷。通过采用上述方法,提供一种基于ar的通过用户手势触发对虚拟骰子进行投掷的实现方案,通过设计骰子根据不同的用户手势做不同的掉落运动,模拟真实的骰子投掷过程,可以增加骰子投掷过程中的用户交互,大大增加投骰子游戏中的真实性和趣味性。
85.参照图2,示出了本发明实施例提供的另一种增强现实的骰子投掷方法的步骤流程图,应用于移动终端,具体可以包括如下步骤:
86.步骤201,响应于骰子投掷指令,开启增强现实功能页面。
87.在本发明实施例中,骰子投掷指令可以为针对骰子投掷控件的触控操作,当检测到针对该骰子投掷控件的触控操作时,开启增强现实功能页面。其中,增强现实功能页面为可以采用增强现实技术对真实场景进行渲染处理,生成对应的增强现实场景并显示的页面。用户通过增强现实功能页面可以在真实世界中对页面呈现的虚拟对象进行相应的控制操作。
88.由于本步骤与步骤101相似,详细描述可参照步骤101,在此不再赘述。
89.步骤202,获取所述移动终端当前拍摄的真实场景,并在所述增强现实功能页面中显示对所述真实场景渲染后生成的增强现实场景。
90.通过调用移动终端摄像头拍摄当前真实场景后,可以对该真实场景添加增强现实内容,以渲染生成对应的增强现实场景,并在增强现实功能页面上进行显示。
91.步骤203,从所述增强现实场景中确定目标平面,并在所述目标平面上方的预设位置生成一虚拟骰子模型。
92.目标平面用于模拟真实世界中投掷骰子掉落的水平平面。虚拟骰子模型用于模拟真实世界中投掷骰子所用的骰子。虚拟骰子模型为具有六个面的立方体模型,每个面分别对应一个点数。
93.在本发明实施例中,可以采用ar引擎进行平面识别,并确定最终选定的目标平面,在目标平面上以ar节点的方式生成虚拟骰子模型。其中,目标平面设置为静态物理体,虚拟骰子模型设置为动态物理体。此外,为了模拟真实世界中的骰子掉落运动,可以将增强现实场景的加速度设置为真实世界的重力加速度。
94.由于本步骤与步骤103相似,详细描述可参照步骤101,在此不再赘述。
95.步骤204,当识别到所述姿态动作信息满足预设的手势动作条件时,基于所述姿态动作信息确定所述用户手部的移动速度和移动方向。
96.在本发明实施例中,如果用户手部的姿态动作信息满足预设的手势动作条件时,触发针对虚拟骰子模型的投掷。在一种示例中,可以是检测到用户手部发生由上而下的投掷动作时,触发针对虚拟骰子模型的投掷,并根据姿态动作信息确定用户手部的移动速度和移动方向。
97.在一种可选的示例中,可以将用户手部(用户手臂)分为手指、手掌、手腕、小前臂、臂肘和后臂几个关键节点,通过计算不同关键节点的移动方向确定整体用户手部的移动方
向,且计算不同关键节点的移动速度确定用户手部投掷骰子动作的移动速度。
98.在本技术的一种可选的示例中,所述当识别到所述姿态动作信息满足预设的手势动作条件时,基于所述姿态动作信息确定所述用户手部的移动速度和移动方向之前,还可以执行以下步骤:
99.检测所述增强现实场景中的图像信息;当识别到所述图像信息中包括手部图像信息时,从所述手部图像信息中获取所述姿态动作信息;基于所述姿态动作信息对应的所述移动方向,判断是否满足所述预设的手势动作条件。
100.其中,所述检测所述增强现实场景中的图像信息,包括:
101.采用预先训练的手部图像识别模型对基于ar引擎提供的所述增强现实场景中的预设数量的图像信息进行检测。
102.在本技术的一种实施方式中,手部图像识别模型可以是将大量的手部(手臂)图像数据作为样本数据通过机器学习进行模型训练得到的。可以采用训练得到的手部图像识别模型通过机器学习引擎(ios系统中为coreml)对ar引擎(ios系统中为arkit)提供的图像信息进行识别。其中,为了性能考虑,可以只对预设数量的图像信息进行处理,例如,不需要将每秒返回的60帧屏幕截图图片都进行识别,而仅需要识别其中的10-20帧即可。
103.当识别到图像信息中存在手部(手臂)图像信息时,可以开始捕捉相应的姿态动作信息,并判断该姿态动作信息对应的手部移动方向是否为手势向下。当确定手部移动方向为手势向下时,触发针对虚拟骰子模型的投掷。
104.步骤205,基于所述移动速度和所述移动方向确定针对所述虚拟骰子模型的运动轨迹。
105.在本发明实施例中,具体是根据计算得到的移动速度和移动方向控制虚拟骰子模型做相应的运动动作的。不同的移动速度和移动方向对应不同的运动轨迹。
106.针对步骤205,具体可以执行以下子步骤:
107.子步骤s11,基于所述移动速度设定所述虚拟骰子模型的质量参数。
108.子步骤s12,基于所述移动方向确定所述虚拟骰子模型的运动方向。
109.子步骤s13,确定与所述质量参数和所述运动方向对应的所述运动轨迹。
110.在一种实施方式中,可以将投掷骰子动作的移动速度转换为虚拟骰子模型的质量参数,以模拟真实世界中的投掷力度;将投掷骰子动作的移动方向转换为虚拟骰子模型的运动方向,以模拟真实世界中的投掷方向。
111.步骤206,控制所述虚拟骰子模型在所述增强现实功能页面中按照所述运动轨迹运动。
112.根据移动速度让虚拟骰子模型具有质量,且根据移动方向让虚拟骰子模型向该方向向下掉落,由于增强现实场景具有重力加速度,虚拟骰子模型会一直掉落直到碰到目标平面。在掉落的过程中,可以为虚拟骰子模型添加在各个方向不规则旋转的动作,在增强现实功能页面展示对应的虚拟骰子模型的运动轨迹和运动状况。
113.步骤207,从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果。
114.虚拟骰子模型掉落到目标平面,并最终静止在目标平面上,可以从该静止的虚拟骰子模型中读取本轮投掷结果。
115.在一种可选的实施方式中,虚拟骰子模型具有弹力属性,针对步骤207,可以执行
以下子步骤:
116.子步骤s21,在所述虚拟骰子模型按照所述弹力属性从所述目标平面反弹后,从反弹后静止于所述目标平面上的所述虚拟骰子模型中确定所述本轮投掷结果。
117.虚拟骰子模型在不规则旋转的情况下掉落碰撞到目标平面,为了模拟更加真实,可以对虚拟骰子模型设置一定的弹力值让其进行反弹,虚拟骰子模型反弹几次最终静止在目标平面上,此时朝上的一面即为最终投掷结果。
118.此外,所述从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果之后,还包括:
119.当识别到用户手部针对所述虚拟骰子模型的抓取动作时,删除所述虚拟骰子模型。
120.为了使得投掷动作可以重复进行,在识别到用户通过手势将虚拟骰子模型拿起时会将对应的虚拟骰子模型节点移除,并设置此时可以再次启动骰子投掷操作。用户可以重复进行上述的骰子投掷操作,并将多次投掷结果进行记录,方便在小游戏中进行使用,例如大富翁游戏中根据投掷点数确定前进步数。
121.为了使本领域技术人员能够更好地理解本发明实施例步骤201至步骤207,下面通过一个例子加以说明:
122.参照图3所示,为本发明实施例的一种增强现实的骰子投掷方法的流程图,该流程可以包括:
123.1、在app内的小游戏情景中点击“3d摇骰子”按钮触发打开ar页面,页面打开时初始化ar场景并开启相机,为了具有更逼真的3d摇骰子效果,设置了ar场景的加速度为真实世界的重力加速度。
124.2、用户在提示下会尝试寻找一个平面,使用ar引擎进行平面的识别,为了更好实现3d摇骰子功能仅识别水平平面。
125.3、在识别到目标平面后需要将其设置为静态物理体,方便骰子掉落其上可以反弹或者静止。
126.4、使用预先设计好的3d骰子模型初始化一个ar节点,并将其添加到距离目标平面一定高度的正上方,3d骰子模型可以为正常样式即有6个面且分别为1到6个点。将加入ar场景中的骰子节点设置为动态物理体。
127.5、为了更好增加用户体验和交互效果,在相机中识别用户的手。当识别到用户的手由上而下进行投掷动作时根据投掷手势的速度让骰子模型具有一定(合适范围内)的质量(以便模拟真实世界中投掷骰子的力度),且根据投掷手势的方向让骰子模型向着该方向向下掉落。
128.6、骰子模型会由于ar场景重力的原因一直掉落直到碰到目标平面,在掉落的过程中给骰子模型添加在各个方向不规则旋转的动作(旋转的方向和速度是随机的,从而实现真正意义上的随机结果)。骰子模型在不规则旋转的情况下掉落碰撞到平面。
129.7、为了更加符合真实情况,可以给骰子模型设置一定的弹力值让其进行反弹,骰子反弹几次最终静止在目标平面上,此时朝上的一面即为该次骰子投掷结果。
130.综上,在本发明实施例中,可以在增强现实场景中识别目标平面,并在该目标平面上添加虚拟骰子模型,根据用户的手部动作对该虚拟骰子模型进行投掷。通过采用上述方
法,提供一种基于ar的通过用户手势触发对虚拟骰子进行投掷的实现方案,通过设计骰子根据不同的用户手势做不同的掉落运动,模拟真实的骰子投掷过程,可以增加骰子投掷过程中的用户交互,大大增加投骰子游戏中的真实性和趣味性。通过在ar场景中识别平面将其设置为静态物理体,并添加虚拟骰子模型做为动态物理体使其根据用户投掷手势的速度和方向,不规则旋转掉落到平面上,从而实现了一种基于ar的通过投掷手势触发的骰子投掷方案,增加了用户交互,提高了游戏真实体验和趣味性。
131.需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
132.参照图4,示出了本发明实施例提供的一种增强现实的骰子投掷装置的结构框图,应用于移动终端,具体可以包括如下模块:
133.开启模块401,用于响应于骰子投掷指令,开启增强现实功能页面;
134.显示模块402,用于获取所述移动终端当前拍摄的真实场景,并在所述增强现实功能页面中显示对所述真实场景渲染后生成的增强现实场景;
135.生成模块403,用于从所述增强现实场景中确定目标平面,并在所述目标平面上方的预设位置生成一虚拟骰子模型;
136.投掷模块404,用于当从所述增强现实场景中识别到用户手部的姿态动作信息满足预设的投掷触发条件时,根据所述姿态动作信息对所述虚拟骰子模型进行投掷;
137.确定模块405,用于从静止于所述目标平面上的所述虚拟骰子模型中确定本轮投掷结果。
138.在本发明实施例中,所述投掷模块,包括:
139.第一确定子模块,用于当识别到所述姿态动作信息满足预设的手势动作条件时,基于所述姿态动作信息确定所述用户手部的移动速度和移动方向;
140.第二确定子模块,用于基于所述移动速度和所述移动方向确定针对所述虚拟骰子模型的运动轨迹;
141.控制子模块,用于控制所述虚拟骰子模型在所述增强现实功能页面中按照所述运动轨迹运动。
142.在本发明实施例中,所述第二确定子模块,包括:
143.设定单元,用于基于所述移动速度设定所述虚拟骰子模型的质量参数;
144.第一确定单元,用于基于所述移动方向确定所述虚拟骰子模型的运动方向;
145.第二确定单元,用于确定与所述质量参数和所述运动方向对应的所述运动轨迹。
146.在本发明实施例中,所述投掷模块,还包括:
147.检测子模块,用于检测所述增强现实场景中的图像信息;
148.获取子模块,用于当识别到所述图像信息中包括手部图像信息时,从所述手部图像信息中获取所述姿态动作信息;
149.判断子模块,用于基于所述姿态动作信息对应的所述移动方向,判断是否满足所述预设的手势动作条件。
150.在本发明实施例中,所述目标平面为静态物理体,所述虚拟骰子模型为动态物理体,所述增强现实场景的加速度为真实世界的重力加速度。
151.在本发明实施例中,所述虚拟骰子模型具有弹力属性,所述确定模块,包括:
152.第三确定子模块,用于在所述虚拟骰子模型按照所述弹力属性从所述目标平面反弹后,从反弹后静止于所述目标平面上的所述虚拟骰子模型中确定所述本轮投掷结果。
153.在本发明实施例中,所述检测子模块,包括:
154.检测单元,用于采用预先训练的手部图像识别模型对基于ar引擎提供的所述增强现实场景中的预设数量的图像信息进行检测。
155.综上,在本发明实施例中,可以在增强现实场景中识别目标平面,并在该目标平面上添加虚拟骰子模型,根据用户的手部动作对该虚拟骰子模型进行投掷。通过采用上述方法,提供一种基于ar的通过用户手势触发对虚拟骰子进行投掷的实现方案,通过设计骰子根据不同的用户手势做不同的掉落运动,模拟真实的骰子投掷过程,可以增加骰子投掷过程中的用户交互,大大增加投骰子游戏中的真实性和趣味性。
156.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
157.本发明实施例还提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述一种增强现实的骰子投掷方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
158.本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述一种增强现实的骰子投掷方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
159.本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
160.本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
161.本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
162.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方
框或多个方框中指定的功能。
163.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
164.尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
165.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
166.以上对本发明所提供的一种增强现实的骰子投掷方法和一种增强现实的骰子投掷装置、一种电子设备和一种计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。