虚拟手臂骨骼的蒙皮方法、装置、设备以及存储介质与流程

文档序号:27265757发布日期:2021-11-06 00:45阅读:162来源:国知局
虚拟手臂骨骼的蒙皮方法、装置、设备以及存储介质与流程

1.本技术涉及计算机技术领域,特别涉及一种虚拟手臂骨骼的蒙皮方法、装置、设备以及存储介质。


背景技术:

2.动画是一种广受欢迎的视频形式,很多用户会通过观看动画的方式来进行娱乐。
3.相关技术中,在制作动画的过程中,往往是先创建动画人物的虚拟骨骼,再将虚拟骨骼中的骨骼点与动画人物的模型进行绑定,通过控制虚拟骨骼的运动,也就能够控制与虚拟骨骼绑定的模型的运动,其中,将虚拟骨骼中的骨骼点与动画人物的模型进行绑定即是蒙皮的过程。
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.一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条计算机程序,所述计算机程序由所述一个或多个处理器加载并执行以实现所述虚拟手臂骨骼的蒙皮方法。
36.一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现所述虚拟手臂骨骼的蒙皮方法。
37.一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计
算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述虚拟手臂骨骼的蒙皮方法。
38.通过本技术实施例提供的技术方案,基于肩关节点、手肘关节点和手腕关节点创建出了手肘内侧骨骼点和手肘外侧骨骼点,手肘内侧骨骼点能够模拟虚拟手臂骨骼手肘内侧的形态变化,手肘外侧骨骼点能够模拟虚拟手臂骨骼手肘外侧的形态变化。基于肩关节点、手肘关节点、手腕关节点、手肘内侧骨骼点以及手肘外侧骨骼点进行蒙皮,得到虚拟手臂模型,由于手肘内侧骨骼点和手肘外侧骨骼点的存在,使得虚拟手臂模型的手肘在运动过程中与真实手臂更加接近,虚拟手臂模型更加真实,蒙皮效果较好。
附图说明
39.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1是本技术实施例提供的一种虚拟骨骼的示意图;
41.图2是本技术实施例提供的一种虚拟手臂骨骼的蒙皮方法的实施环境的示意图;
42.图3是本技术实施例提供的一种虚拟手臂骨骼的蒙皮方法流程图;
43.图4是本技术实施例提供的一种虚拟手臂骨骼的蒙皮方法流程图;
44.图5是本技术实施例提供的一种虚拟手臂骨骼的示意图;
45.图6是本技术实施例提供的一种虚拟手臂骨骼的示意图;
46.图7是本技术实施例提供的一种虚拟手臂骨骼的示意图;
47.图8是本技术实施例提供的一种虚拟手臂骨骼的示意图;
48.图9是本技术实施例提供的一种界面示意图;
49.图10是本技术实施例提供的一种界面示意图;
50.图11是本技术实施例提供的一种虚拟手臂骨骼的示意图;
51.图12是本技术实施例提供的一种向量插值的示意图;
52.图13是本技术实施例提供的一种虚拟手臂骨骼的示意图;
53.图14是本技术实施例提供的一种虚拟手臂骨骼的示意图;
54.图15是本技术实施例提供的一种虚拟手臂骨骼的示意图;
55.图16是本技术实施例提供的一种界面示意图;
56.图17是本技术实施例提供的一种界面示意图;
57.图18是本技术实施例提供的一种虚拟手臂骨骼的对比图;
58.图19是本技术实施例提供的一种虚拟手臂模型的对比图;
59.图20是本技术实施例提供的一种虚拟手臂模型的对比图;
60.图21是本技术实施例提供的一种虚拟手臂骨骼的蒙皮装置结构示意图;
61.图22是本技术实施例提供的一种终端的结构示意图;
62.图23是本技术实施例提供的一种服务器的结构示意图。
具体实施方式
63.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式做进一步的详细描述。
64.本技术中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
65.本技术中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上,例如,多个参照人脸图像是指两个或两个以上的参照人脸图像。
66.首先对本技术实施例涉及的一些名词进行介绍。
67.dcc(digital content create,数字内容创建)软件:生产制作动画角色所采用的一类软件的统称。目前典型的软件比如3d max(3d studio max,三维动画渲染和制作软件)、maya(玛雅)、blender(一种三维软件)以及houdini(胡迪尼)等。
68.虚拟骨骼/骨架(skeleton):其包含骨骼和关节,骨骼就是坐标空间,骨骼层次就是嵌套的坐标空间。关节只是描述骨骼的位置即骨骼自己的坐标空间原点在其父空间中的位置,绕关节旋转是指骨骼坐标空间(包括所有子空间)自身的旋转。参见图1,图1中展示了一个虚拟骨骼101。
69.骨骼动画:每个动画角色,至少包含了骨骼和模型两种主要数据,在游戏/影视动画制作过程中,由骨骼的姿态来驱动模型(改变角色模型外表)的过程,称作骨骼动画。
70.蓝图(blueprint):是unreal engine(虚幻引擎,ue)中特殊类型的资源,提供一种直观的、基于节点的界面,以用于创建新类型的actor(对象)及关卡脚本事件;它为关卡设计师和游戏开发人员提供了一种在虚幻编辑器中快速创建及迭代游戏可玩性的工具,而且一行代码都不需要书写。
71.动画蓝图:执行动画混合,直接控制骨架的骨骼,或设置最终将定义每一帧要使用的骨架网格物体的最终动画姿势的逻辑。
72.图2是本技术实施例提供的一种虚拟手臂骨骼的蒙皮方法的实施环境示意图,参见图2,该实施环境中可以包括终端210和服务器240。
73.终端210通过无线网络或有线网络与服务器240相连。可选地,终端210是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端210安装和运行有支持虚拟手臂骨骼蒙皮的应用程序。
74.可选地,服务器是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
75.可选地,终端210泛指多个终端中的一个,本技术实施例仅以终端210来举例说明。
76.本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端仅为一个,或者上述终端为几十个或几百个,或者更多数量,此时上述实施环境中还包括其他终端。本技术实施例对终端的数量和设备类型不加以限定。
77.在本技术实施例中,可以由服务器或终端作为执行主体来实施本技术实施例提供的技术方案,也可以通过终端和服务器之间的交互来实施本技术提供的技术方法,本技术
实施例对此不作限定。
78.在介绍完本技术实施例的实施环境之后,下面将结合上述实施环境,对比本技术实施例的应用场景进行介绍,在下述说明过程中,服务器也即是上述实施环境中的终端210,服务器也即是上述实施环境中的服务器240。
79.本技术实施例提供的虚拟手臂骨骼的蒙皮方法能够应用在游戏制作的场景、动画制作场景以及其他制作三维模型的场景中。
80.在游戏制作的场景下,本技术实施例提供的虚拟手臂骨骼的蒙皮方法能够应用在制作游戏人物手臂的过程中,在制作游戏人物手臂的过程中,技术人员能够采用本技术实施例提供的虚拟手臂骨骼的蒙皮方法,通过终端或者服务器来创建虚拟手臂骨骼的手肘内侧骨骼点和手肘外侧骨骼点,结合手肘内侧骨骼点和手肘外侧骨骼点对虚拟手臂骨骼进行蒙皮,得到游戏人物的虚拟手臂模型。在一些实施例中,本技术实施例提供的虚拟手臂骨骼的蒙皮方法能够被封装为一个插件供技术人员使用,以提高虚拟手臂骨骼的蒙皮效率。
81.在动画制作的场景下,本技术实施例提供的虚拟手臂骨骼的蒙皮方法能够应用在制作动画人物手臂的过程中,在制作动画人物手臂的过程中,技术人员能够采用本技术实施例提供的虚拟手臂骨骼的蒙皮方法,通过终端或者服务器来创建虚拟手臂骨骼的手肘内侧骨骼点和手肘外侧骨骼点,结合手肘内侧骨骼点和手肘外侧骨骼点对虚拟手臂骨骼进行蒙皮,得到动画人物的虚拟手臂模型。在一些实施例中,本技术实施例提供的虚拟手臂骨骼的蒙皮方法能够被封装为一个插件供技术人员使用,以提高虚拟手臂骨骼的蒙皮效率。
82.在介绍完本技术实施例的实施环境和应用场景之后,下面对本技术实施例提供的虚拟手臂骨骼的蒙皮方法进行介绍。
83.图3是本技术实施例提供的一种虚拟手臂骨骼的蒙皮方法的流程图,参见图3,以执行主体为终端为例,方法包括:
84.301、终端在虚拟手臂骨骼中创建肩关节点、手肘关节点以及手腕关节点。
85.其中,虚拟手臂骨骼用于模拟真实手臂骨骼,相应地,肩关节点用于模拟肩关节,手肘关节点用于模拟手肘关节,手腕关节点用于模拟手腕关节。
86.302、终端基于该肩关节点、该手肘关节点以及该手腕关节点,创建该虚拟手臂骨骼的手肘内侧骨骼点和手肘外侧骨骼点,该手肘内侧骨骼点用于模拟该虚拟手臂骨骼的手肘内侧的形态变化,该手肘外侧骨骼点用于模拟该虚拟手臂骨骼的手肘外侧的形态变化。
87.其中,手肘内侧骨骼点和手肘外侧骨骼点不存在于虚拟手臂骨骼上,而是基于该肩关节点、该手肘关节点以及该手腕关节点确定出的,可能位于虚拟手臂骨骼的外侧,后续用于对蒙皮过程进行辅助的骨骼点。
88.303、终端基于该肩关节点、该手肘关节点、该手腕关节点、该手肘内侧骨骼点以及该手肘外侧骨骼点,对该虚拟手臂骨骼进行蒙皮,得到虚拟手臂模型。
89.其中,由于手肘内侧骨骼点能够模拟手肘内侧的形态变化,手肘外侧骨骼点能够模拟手肘外侧的形态变化,那么结合手肘内侧骨骼点和手肘外侧骨骼点进行蒙皮之后,得到的虚拟手臂模型在运动时,手肘位置的真实性也就越高。
90.通过本技术实施例提供的技术方案,基于肩关节点、手肘关节点和手腕关节点创建出了手肘内侧骨骼点和手肘外侧骨骼点,手肘内侧骨骼点能够模拟虚拟手臂骨骼手肘内侧的形态变化,手肘外侧骨骼点能够模拟虚拟手臂骨骼手肘外侧的形态变化。基于肩关节
点、手肘关节点、手腕关节点、手肘内侧骨骼点以及手肘外侧骨骼点进行蒙皮,得到虚拟手臂模型,由于手肘内侧骨骼点和手肘外侧骨骼点的存在,使得虚拟手臂模型的手肘在运动过程中与真实手臂更加接近,虚拟手臂模型更加真实,蒙皮效果较好。
91.上述步骤301

303是对本技术实施例提供的虚拟手臂骨骼的蒙皮方法的简单介绍,下面将结合一些例子,对本技术实施例提供的虚拟手臂骨骼的蒙皮方法进行详细介绍。
92.图4是本技术实施例提供的一种虚拟手臂骨骼的蒙皮方法的流程图,参见图4,方法包括:
93.401、终端在虚拟手臂骨骼中创建肩关节点、手肘关节点以及手腕关节点。
94.在一种可能的实施方式中,虚拟手臂骨骼包括虚拟大臂、虚拟小臂以及虚拟手掌,该虚拟大臂、该虚拟小臂以及该虚拟手掌顺次相连。终端在该虚拟大臂的起点,创建该肩关节点,该肩关节点被该虚拟大臂位置约束和旋转约束。终端在该虚拟大臂和该虚拟小臂的连接位置,创建该手肘关节点,该手肘关节点被该虚拟小臂位置约束和旋转约束。终端在该虚拟小臂和该虚拟手掌的连接位置,创建该手腕关节点,该手腕关节点被该虚拟手掌位置约束和旋转约束。其中,虚拟大臂的起点也即是虚拟手臂骨骼的起点,或者说是虚拟手臂骨骼与虚拟躯干骨骼相连的位置。
95.其中,位置约束使得第一对象跟随一个第二对象的位置或者多个第二对象的平均位置。当第一对象a被配置为被第二对象b位置约束,那么第二对象b的移动会带动第一对象a的移动。若该第一对象被多个第二对象共同位置约束,那么每个第二对象与该第一对象之间存在一个权重,该权重用于表示对应第二对象对该第一对象的位置约束程度。权重越高,对应第二对象对该第一对象的位置约束程度也就越高;权重越低,对应第二对象对该第一对象的位置约束程度也就越低。在一些实施例中,该权重也被称为位置约束比,上述对象包括本技术实施例中的骨骼点、关节点以及骨骼。
96.旋转约束使得第一对象跟随一个第二对象的旋转或者多个第二对象的旋转。当第一对象a被配置为被第二对象b旋转约束,那么第二对象b的旋转会带动第一对象a的旋转。若该第一对象被多个第二对象共同旋转约束,那么每个第二对象与该第一对象之间存在一个权重,该权重用于表示对应第二对象对该第一对象的旋转约束程度。权重越高,对应第二对象对该第一对象的旋转约束程度也就越高;权重越低,对应第二对象对该第一对象的旋转约束程度也就越低。在一些实施例中,该权重也被称为旋转约束比,上述对象包括本技术实施例中的骨骼点、关节点以及骨骼。
97.下面通过几个例子对上述实施方式进行说明。
98.例1、终端在骨骼点创建界面中显示虚拟手臂骨骼,虚拟手臂骨骼包括虚拟大臂、虚拟小臂以及虚拟手掌。响应于基于虚拟大臂起点的操作,终端在虚拟大臂的起点创建该肩关节点。终端将该肩关节点配置为被该虚拟大臂位置约束和旋转约束。响应于基于虚拟大臂和虚拟小臂的连接位置的操作,终端在虚拟大臂和虚拟小臂的连接位置创建该手肘关节点。终端将该手肘关节点配置为被该虚拟小臂位置约束和旋转约束。响应于基于虚拟小臂和虚拟手掌的连接位置的操作,终端在虚拟小臂和虚拟手掌的连接位置创建该手腕关节点。终端将该手腕关节点配置为被该虚拟手掌位置约束和旋转约束。
99.比如,终端运行dcc软件,在dcc软件的运行界面中显示虚拟骨骼,虚拟骨骼包括虚拟手臂骨骼、虚拟躯干骨骼以及虚拟腿部骨骼等,虚拟手臂骨骼包括虚拟大臂、虚拟小臂以
及虚拟手掌,dcc软件的运行界面也即是骨骼点创建界面。技术人员通过dcc软件在虚拟大臂的起点位置创建肩关节点,比如,技术人员调用dcc软件的骨骼点创建功能,点击虚拟大臂的起点位置,就能够在虚拟大臂的起点位置创建肩关节点,终端将创建好的肩关节点显示在dcc软件的应用界面中。技术人员调用dcc软件的位置约束功能,为该肩关节点配置位置约束,也即是将该肩关节点配置为被虚拟大臂位置约束。该肩关节点被配置为被虚拟大臂位置约束之后,在虚拟大臂进行移动时,该肩关节点随着虚拟大臂共同运动,且运动的方向和距离均与虚拟大臂相关。在一些实施例中,技术人员能够通过dcc软件将该肩关节与虚拟大臂之间的位置约束比配置为1,也就表示该肩关节点与虚拟大臂保持同步移动,若虚拟大臂向左移动5cm,那么该肩关节点也向左移动5cm。技术人员调用dcc软件的旋转约束功能,将该肩关节点配置旋转约束,也即是将该肩关节点配置为被虚拟大臂旋转约束。该肩关节点被配置为被虚拟大臂旋转约束之后,在虚拟大臂进行旋转时,该肩关节点随着虚拟大臂共同旋转,在一些实施例中,技术人员能够通过dcc软件将该肩关节与虚拟大臂之间的旋转约束比配置为1,也就表示该肩关节点与虚拟大臂保持同步旋转,若虚拟大臂顺时针旋转了30
°
,那么该肩关节点也顺时针旋转30
°

100.技术人员通过dcc软件,在虚拟大臂和虚拟小臂的连接处创建手肘关节点,在一些实施例中,技术人员调用dcc软件的骨骼点创建功能,点击虚拟大臂和虚拟小臂的连接处,就能够在虚拟大臂和虚拟小臂的连接处创建手肘关节点,终端将创建好的手肘关节点显示在dcc软件的应用界面中。技术人员调用dcc软件的位置约束功能,将该手肘关节点配置为被虚拟小臂位置约束。该手肘关节点被配置为被虚拟小臂位置约束之后,在虚拟小臂进行移动时,该手肘关节点随着虚拟小臂共同运动,在一些实施例中,技术人员能够通过dcc软件将该手肘关节与虚拟小臂之间的位置约束比配置为1。该手肘关节点被配置为被虚拟小臂位置约束之后,在虚拟小臂进行移动时,该手肘关节点随着虚拟小臂共同运动。技术人员调用dcc软件的旋转约束功能,将该手肘关节点配置为被虚拟小臂旋转约束。该手肘关节点被配置为被虚拟小臂旋转约束之后,在虚拟小臂进行旋转时,该手肘关节点随着虚拟小臂共同旋转,在一些实施例中,技术人员能够通过dcc软件将该手肘关节与虚拟小臂之间的旋转约束比配置为1。
101.技术人员通过dcc软件,在虚拟小臂和虚拟手掌的连接处创建手腕关节点在一些实施例中,技术人员调用dcc软件的骨骼点创建功能,点击虚拟小臂和虚拟手掌的连接处,就能够在虚拟小臂和虚拟手掌的连接处创建手腕关节点,终端将创建好的手腕关节点显示在dcc软件的应用界面中。技术人员调用dcc软件的位置约束功能,将该手腕关节点配置为被虚拟手掌位置约束。该手腕关节点被配置为被虚拟手掌位置约束之后,在虚拟手掌进行移动时,该手腕关节点随着虚拟手掌共同运动,在一些实施例中,技术人员能够通过dcc软件将该手腕关节与虚拟手掌之间的位置约束比配置为1。该手腕关节点被配置为被虚拟手掌位置约束之后,在虚拟手掌进行移动时,该手腕关节点随着虚拟手掌共同运动。技术人员调用dcc软件的旋转约束功能,将该手腕关节点配置为被虚拟手掌旋转约束。该手腕关节点被配置为被虚拟手掌旋转约束之后,在虚拟手掌进行旋转时,该手腕关节点随着虚拟手掌共同旋转,在一些实施例中,技术人员能够通过dcc软件将该手腕关节与虚拟手掌之间的旋转约束比配置为1。
102.参见图1,终端运行dcc软件,技术人员在dcc软件中加载虚拟骨骼对应的文件,在
dcc软件的运行界面中显示虚拟骨骼101,虚拟骨骼101包括虚拟左臂骨骼102和虚拟右臂骨骼103。以对虚拟左臂骨骼102进行处理为例进行说明,参见图5,虚拟左臂骨骼102包括虚拟大臂501、虚拟小臂502以及虚拟手掌503。技术人员通过dcc软件,在虚拟大臂501的起点创建肩关节点5011,在虚拟大臂501和虚拟小臂502的连接位置创建手肘关节点5021,在虚拟小臂502和虚拟手掌503的连接位置创建手腕关节点5031。技术人员通过dcc软件,将肩关节点5011配置为被虚拟大臂501位置约束和旋转约束,位置约束比和旋转约束比均为1;将手肘关节点5021配置为被虚拟小臂502位置约束和旋转约束,位置约束比和旋转约束比均为1;将手腕关节点5031配置为被虚拟手掌503位置约束和旋转约束,位置约束比和旋转约束比均为1。
103.通过上述实施方式,能够使得肩关节点5011的旋转数值和位移数值与虚拟大臂501一致,使得手肘关节点5021的旋转数值和位移数值与虚拟小臂502一致,使得手腕关节点5031的旋转数值和位移数值与虚拟手掌503一致,其中,旋转数值也即是旋转的方向和速度,位移数值也即是移动的方向和速度。
104.若dcc软件为虚幻引擎(unreal engine,ue),那么技术人员能够通过蓝图来将肩关节点配置为被虚拟大臂位置约束和旋转约束,将手肘关节点配置为被虚拟小臂位置约束和旋转约束,将手腕关节点配置为被虚拟手掌位置约束和旋转约束。在一些实施例中,将虚拟手臂骨骼导入虚拟引擎之后,技术人员能够分别在肩关节点、手肘关节点以及手腕关节点上添加插槽,这样就能够在蓝图中通过插槽配置对应关节点的位置约束、旋转约束和缩放约束。
105.例2、终端对虚拟手臂骨骼进行位置识别,在虚拟手臂骨骼中确定肩关节点、手肘关节点以及手腕关节点的位置。比如,终端将虚拟手臂骨骼中多个骨骼点的三维坐标输入位置识别模型,通过位置识别模型对多个骨骼点进行识别,得到多个骨骼点对应的类型,该位置识别模型是基于带有标注的样本手臂骨骼训练得到的,具有确定虚拟手臂骨骼中不同部位的类型的能力,在一些实施例中,该位置识别模型为一个3d

cnn(convolutional neural networks,卷积神经网络)模型。终端将类型为虚拟大臂的多个骨骼点进行聚类,得到虚拟手臂骨骼中虚拟大臂的位置。终端将类型为虚拟小臂的多个骨骼点进行聚类,得到虚拟手臂骨骼中虚拟小臂的位置。终端将类型为虚拟手掌的多个骨骼点进行聚类,得到虚拟手臂骨骼中虚拟手掌的位置。终端在虚拟大臂的起点创建肩关节点,在虚拟大臂和虚拟小臂的连接位置创建手肘关节点,在虚拟小臂和虚拟手掌的连接位置创建手腕关节点。终端将肩关节点与虚拟大臂进行位置绑定和旋转绑定,这个步骤也即是将肩关节点配置为被虚拟大臂位置约束和旋转约束。终端将手肘关节与虚拟小臂进行位置绑定和旋转绑定,这个步骤也即是将手肘关节点配置为被虚拟小臂位置约束和旋转约束。终端将手腕关节与虚拟手掌进行位置绑定和旋转绑定,这个步骤也即是将手腕关节点配置为被虚拟手掌位置约束和旋转约束。
106.在这种方式下,终端能够自动在虚拟手臂骨骼中创建肩关节点、手肘关节点以及手腕关节点,效率较高。
107.402、终端基于该肩关节点、该手肘关节点以及该手腕关节点,创建该虚拟手臂骨骼的手肘内侧参考点,该手肘内侧参考点被该虚拟大臂、该虚拟小臂以及该虚拟手掌共同位置约束,该手肘内侧参考点被该虚拟大臂以及该虚拟小臂共同旋转约束。
108.在一些实施例中,该虚拟手臂骨骼的该手肘内侧骨骼点基于该虚拟手臂骨骼的手肘内侧参考点创建,该手肘内侧参考点随着该肩关节点、该手肘关节点以及该手腕关节点中的任一个点的运动而运动。该虚拟手臂骨骼的该手肘外侧骨骼点基于该虚拟手臂骨骼的手肘外侧参考点创建,该手肘外侧参考点随着该手肘内侧参考点的运动而运动。其中,手肘内侧参考点随着该肩关节点、该手肘关节点以及该手腕关节点的运动而运动,也就表示该手肘内侧参考点的移动方向、移动距离、旋转方向以及旋转距离是由该肩关节点、该手肘关节点以及该手腕关节点共同决定的,该手肘内侧参考点可以视作创建手肘内侧骨骼点的中间点,也即是该手肘内侧参考点为创建出的手肘内侧骨骼点与该肩关节点、该手肘关节点以及该手腕关节点之间的连接媒介。手肘外侧参考点随着该手肘内侧参考点的运动而运动,也就表示该手肘外侧参考点的移动方向、移动距离、旋转方向以及旋转距离是由该手肘内侧参考点决定的,在一些实施例中,手肘外侧参考点与手肘内侧参考点互为镜像,该手肘外侧参考点可以视作创建手肘外侧骨骼点的中间点,也即是该手肘外侧参考点为创建出的手肘外侧骨骼点与该手肘内侧参考点之间的连接媒介。
109.在一种可能的实施方式中,终端在该肩关节点、该手肘关节点以及该手腕关节点的中心点,创建该虚拟手臂骨骼的手肘内侧参考点,该手肘内侧关节点用于模拟该虚拟手臂骨骼的手肘内侧的形态变化。终端将该手肘内侧参考点配置为被该虚拟大臂、该虚拟小臂以及该虚拟手掌共同位置约束。终端将该手肘内侧参考点配置为被该虚拟大臂和该虚拟小臂共同旋转约束。在虚拟手臂骨骼运动时,也即是该虚拟大臂、该虚拟小臂以及该虚拟手掌中的任一个发生运动时,该手肘内侧参考点也会发生运动。当虚拟大臂和虚拟小臂之间的夹角越大时,该手肘内侧参考点距离手肘关节点的也就越近;当虚拟大臂和虚拟小臂之间的夹角越小时,该手肘内侧参考点距离手肘关节点的也就越远。
110.在一些实施例中,终端将该肩关节点的三维坐标、该手肘关节点的三维坐标以及该手腕关节点的三维坐标的平均三维坐标所指示的位置,确定为该手肘内侧参考点所在的位置。比如,终端通过下述公式(1)来确定手肘内侧参考点的三维坐标。
111.(x0,y0,z0)=[(x1+x2+x3)/3,(y1+y2+y3)/3,(z1+z2+z3)/3](1)
[0112]
其中,x0为手肘内侧参考点的横坐标,y0为手肘内侧参考点的纵坐标,z0为手肘内侧参考点的竖坐标,x1为肩关节点的横坐标,y1为肩关节点的纵坐标,z1为肩关节点的竖坐标,x2为手肘关节点的横坐标,y2为手肘关节点的纵坐标,z2为手肘关节点的竖坐标,x3为手腕关节点的横坐标,y3为手腕关节点的纵坐标,z3为手腕关节点的竖坐标。
[0113]
举例来说,终端在骨骼点创建界面中显示虚拟手臂骨骼以及创建好的肩关节点、该手肘关节点和该手腕关节点。响应于在骨骼点创建界面中的操作,终端确定该肩关节点的三维坐标、该手肘关节点的三维坐标以及该手腕关节点的三维坐标的平均三维坐标。终端基于该平均三维坐标,在骨骼点创建界面中显示手肘内侧参考点。终端将该手肘内侧参考点配置为被该虚拟大臂、该虚拟小臂以及该虚拟手掌共同位置约束,在一些实施例中,该虚拟大臂、该虚拟小臂以及该虚拟手掌对该手肘内侧参考点的位置约束比各为1/3,也就表示该虚拟大臂、该虚拟小臂以及该虚拟手掌对该手肘内侧参考点具有相同的位置约束力。终端将该手肘内侧参考点配置为被该虚拟大臂和该虚拟小臂共同旋转约束,在一些实施例中,该虚拟大臂和该虚拟小臂对该手肘内侧参考点的旋转约束比各为1/2,也就表示该虚拟大臂、该虚拟小臂以及该虚拟手掌对该手肘内侧参考点具有相同的旋转约束力。参见图6,
终端在骨骼点创建界面中显示手肘内侧参考点601。
[0114]
403、终端基于该手肘关节点和该手肘内侧参考点,创建该手肘内侧骨骼点,该手肘内侧骨骼点被该手肘内侧参考点位置约束和旋转约束,该手肘内侧骨骼点用于模拟该虚拟手臂骨骼的手肘内侧的形态变化。
[0115]
在一种可能的实施方式中,终端在该手肘关节点所在的位置,创建手肘关节参考点,该手肘关节参考点被该虚拟大臂位置约束,该手肘关节参考点被该手肘内侧参考点旋转约束,手肘关节参考点与手肘关节点位置相同,但是具有不同的旋转约束。终端基于第一权重,在该手肘关节参考点和该手肘内侧参考点的连线上,创建该手肘内侧骨骼点,该第一权重与第一距离正相关,该第一距离为该手肘内侧骨骼点与该手肘关节参考点之间的距离。其中,第一权重由技术人员根据实际情况进行设置,本技术实施例对此不做限定。若第一权重为0,那么该手肘内侧骨骼点与手肘关节参考点重合;若第一权重为1,那么该手肘内侧骨骼点与手肘内侧参考点重合;若第一权重为0.5,那么该手肘内侧骨骼点位于手肘内侧参考点和手肘关节参考点连线的中点。技术人员能够通过调整第一权重来控制手肘内侧骨骼点的位置。在一些实施例中,技术人员调整第一权重的目的是使得手肘内侧骨骼点尽可能贴近虚拟手臂模型的手肘内侧。在一些实施例中,终端能够通过dcc软件的position constraint(位置约束)功能来确定手肘内侧骨骼点的位置。
[0116]
举例来说,终端在骨骼点创建界面中显示虚拟手臂骨骼以及创建好的肩关节点、该手肘关节点、该手腕关节点和该手肘内侧参考点。响应于基于该手肘关节点的操作,终端在该手肘关节点所在的位置上创建手肘关节参考点,将该手肘关节参考点显示在骨骼点创建界面中。终端将该手肘关节参考点配置为被该虚拟大臂位置约束,被该手肘内侧参考点旋转约束,在一些实施例中,该虚拟大臂对该手肘关节参考点的位置约束比为1,该手肘内侧参考点对该手肘关节参考点的旋转约束为1,也即是,该手肘关节参考点与该虚拟大臂具有相同的位移数值,该手肘关节参考点与该手肘内侧参考点具有相同的旋转数值。终端获取第一权重,基于第一权重在该手肘关节参考点和该手肘内侧参考点的连线上,创建该手肘内侧骨骼点。
[0117]
将手肘关节参考点记作bb,将手肘内侧参考点记作a1,将手肘关节参考点和手肘内侧参考点的连线记作线段a,将手肘内侧骨骼点记作c。由于a1会随着虚拟大臂和虚拟小臂的运动而运动,那么由a1和bb组成的线段a的长度也会随之发生变化。c位于线段a上,当第一权重确定之后,若线段a的长度发生变化,那么c的位置也会发生变化。由于第一权重是为了使得c贴近虚拟手臂模型的手肘内侧,那么相较于a1来说,c能够更加直观地模拟手肘内侧的形态变化。
[0118]
参见图7,终端在骨骼点创建界面中显示虚拟手臂骨骼700以及创建好的肩关节点701、手肘关节点702、手腕关节点703和该手肘内侧参考点704。响应于基于该手肘关节点702的操作,终端在该手肘关节点702所在的位置上创建手肘关节参考点705。终端将该手肘关节参考点配置为被该虚拟大臂位置约束,被该手肘内侧参考点旋转约束。参见图8,终端基于第一权重,在手肘内侧参考点801和肘关节参考点802的连线上显示手肘内侧骨骼点803。
[0119]
若dcc软件为虚幻引擎(unreal engine,ue),技术人员能够通过蓝图来创建手肘内侧参考点,并基于手肘内侧参考点和手肘关节参考点来创建手肘内侧骨骼点。参见图9,
x1为肩关节点,x2为手肘关节参考点,x3为手腕关节点,p1也即是手肘内侧骨骼点。在一些实施例中,第一权重为0.6。
[0120]
当然,技术人员也能够通过蓝图来将手肘内侧骨骼点配置为被虚拟大臂和虚拟小臂共同旋转约束,参见图10,x1为肩关节点,x2为手肘关节参考点,由于肩关节点被虚拟大臂位置约束和旋转约束,手肘关节参考点被虚拟小臂位置约束和旋转约束,那么x1也就能够代表虚拟大臂,x2能够代表虚拟小臂。alpha为旋转约束比,将其配置为0.5也就表示手肘内侧骨骼点由虚拟大臂和虚拟小臂各旋转约束1/2。r1也即是手肘内侧骨骼点的旋转数值,为虚拟大臂和虚拟小臂的旋转数值和的一半。
[0121]
404、终端基于该手肘关节点和该手肘内侧参考点,创建该虚拟手臂骨骼的手肘外侧参考点,该手肘外侧参考点被该手肘内侧参考点位置约束,该手肘外侧参考点用于模拟该虚拟手臂骨骼的手肘外侧的形态变化。
[0122]
在一种可能的实施方式中,终端在该手肘关节点和该手肘内侧参考点连线的延长线上,创建该手肘外侧参考点,该手肘外侧参考点与该手肘关节点之间的距离与该手肘关节点和该手肘内侧参考点之间的距离相同。也即是,该手肘关节点是该手肘内侧参考点与该手肘外侧参考点连线的中点。当虚拟大臂和虚拟小臂之间的夹角越大时,该手肘外侧参考点距离手肘关节点的也就越近;当虚拟大臂和虚拟小臂之间的夹角越小时,该手肘外侧参考点距离手肘关节点的也就越远。
[0123]
举例来说,终端在骨骼点创建界面中显示创建好的该手肘关节点和该手肘内侧参考点。响应于基于该手肘关节点的操作,终端在该手肘关节点所在的位置创建手肘关节参考点,该手肘关节参考点被该虚拟大臂位置约束,该手肘关节参考点被该手肘内侧参考点旋转约束,手肘关节参考点与手肘关节点位置相同,但是具有不同的旋转约束。终端在该手肘关节参考点与该手肘内侧参考点连线的延长线上,创建该手肘外侧参考点。终端将该手肘外侧参考点配置为被该手肘关节参考点父约束,也即是该手肘外侧参考点为该手肘关节参考点的子节点,将该手肘外侧参考点配置为被该手肘内侧参考点位置约束。其中,终端将该手肘外侧参考点配置为该手肘关节参考点的子节点,也就意味着该手肘关节参考点为该手肘外侧参考点的父节点,该手肘外侧参考点被该手肘关节参考点位置约束、旋转约束以及缩放约束,其中,缩放约束是指该手肘外侧参考点与该手肘关节参考点具有相同的缩放比例。
[0124]
参见图11,终端在骨骼点创建界面中显示创建好的该手肘关节点1101和该手肘内侧参考点1102。响应于基于该手肘关节点1101的操作,终端在该手肘关节点1101所在的位置创建手肘关节参考点1103。终端在该手肘关节参考点1103与该手肘内侧参考点1102连线的延长线上,创建该手肘外侧参考点1104。
[0125]
下面对终端在该手肘关节参考点与该手肘内侧参考点连线的延长线上,创建该手肘外侧参考点的方法进行说明。
[0126]
在一种可能的实施方式中,终端对该手肘关节参考点和该手肘内侧参考点进行线性插值,得到该手肘外侧参考点。
[0127]
举例来说,终端获取原点指向该手肘关节参考点的第一向量,获取原点指向该手肘内侧参考点的第二向量。终端基于第一向量和第二向量获取第三向量,第三向量也即是原点指向手肘外侧参考点的向量,第三向量的终点也即是手肘外侧参考点的位置。
[0128]
比如,终端通过下述公式(2)来基于第一向量和第二向量获取第三向量。
[0129]
v3=(1

t)v1+tv2
ꢀꢀ
(2)
[0130]
其中,v3为第三向量,v1为第一向量,v2为第二向量,t为权重,当t=0时,v3=v1,手肘外侧参考点与手肘关节点重合;当t=1时,v3=v2,手肘外侧参考点与手肘内侧参考点重合。
[0131]
终端对公式(2)进行变换,得到下述公式(3)。
[0132]
v3=v1+t(v2

v1)
ꢀꢀ
(3)
[0133]
参见图12,v2

v1为v1的终点指向v2终点的第四向量,t(v2

v1)的终点也就在第四向量表示的线段(v2

v1)上移动,从图12中可以看出,t(v2

v1)的终点也即是v3的终点,调节t就能够控制v3的终点。将手肘关节参考点记作bb,将手肘内侧参考点记作a1,v1也即是原点指向bb的向量,v2也即是原点指向a1的向量。在一些实施例中,t=

1,时得到的第三向量也即是指向手肘外侧参考点的向量。将手肘外侧参考点记作a2,a1、bb、a2三点均在一条直线上,a2到bb的距离与a1到bb的距离相同,且bb在a1与a2的中间,也即是bb是a1和a2的中点。
[0134]
405、终端基于该手肘关节点和该手肘外侧参考点,创建该手肘外侧骨骼点,该手肘外侧骨骼点被该手肘外侧参考点位置约束,该手肘外侧骨骼点被该手肘内侧参考点旋转约束,该手肘外侧骨骼点用于模拟该虚拟手臂骨骼的手肘外侧的形态变化。
[0135]
在一些实施例中,该手肘内侧骨骼点和该手肘外侧骨骼点分别位于该手肘关节点的两侧。
[0136]
在一种可能的实施方式中,终端基于第二权重,在该手肘关节参考点和该手肘外侧参考点的连线上,创建该手肘外侧骨骼点,该第二权重与第二距离正相关,该第二距离为该手肘外侧骨骼点与该手肘关节参考点之间的距离。其中,第二权重由技术人员根据实际情况进行设置,本技术实施例对此不做限定。若第二权重为0,那么该手肘外侧骨骼点与手肘关节参考点重合;若第二权重为1,那么该手肘外侧骨骼点与手肘外侧参考点重合;若第二权重为0.5,那么该手肘外侧骨骼点位于手肘外侧参考点和手肘关节参考点连线的中点。技术人员能够通过调整第二权重来控制手肘外侧骨骼点的位置,在一些实施例中,技术人员调整第二权重的目的是使得手肘外侧骨骼点尽可能贴近虚拟手臂模型的手肘外侧。
[0137]
举例来说,终端在骨骼点创建界面中显示该手肘关节参考点和该手肘外侧参考点。终端获取第二权重,基于第二权重在该手肘关节参考点和该手肘外侧参考点的连线上,创建该手肘外侧骨骼点。
[0138]
将手肘关节参考点记作bb,将手肘外侧参考点记作a2,将手肘关节参考点和手肘外侧参考点的连线记作线段b,将手肘外侧骨骼点记作d,由于a2会随着虚拟大臂和虚拟小臂的运动而运动,那么由a2和bb组成的线段a的长度也会发生变化。d位于线段b上,当第二权重确定之后,若线段a的长度发生变换,那么d的位置也会发生变化。由于第二权重是为了使得d贴近虚拟手臂模型的手肘外侧,那么相较于a2来说,d能够更加直观地模拟手肘外侧的形态变化。
[0139]
在一些实施中,终端能够将第一权重配置为0.25,将第二权重也配置为0.25,以使得手肘内侧骨骼点和手肘外侧骨骼点具有一定的距离,以便于后续调整。举例来说,技术人员通过dcc软件将手肘内侧骨骼点和手肘外侧骨骼点的position constraint(位置约束)
的weight(权重)均配置为25。
[0140]
参见图8,终端在骨骼点创建界面中显示该手肘外侧参考点804。终端基于第二权重,在手肘关节参考点802和该手肘外侧参考点804的连线上显示手肘外侧骨骼点805。
[0141]
若dcc软件为虚幻引擎(unreal engine,ue),技术人员能够通过蓝图来创建手肘外侧参考点,并基于手肘外侧参考点和手肘关节参考点来创建手肘外侧骨骼点。参见图9,x2为手肘关节参考点,p1为手肘内侧骨骼点,p2为手肘外侧骨骼点,alphe为第二权重,在一些实施例中,第二权重为-0.6。
[0142]
406、终端基于该手肘内侧骨骼点,创建手肘内侧修形骨骼,该手肘内侧修形骨骼被该手肘内侧骨骼点位置约束和旋转约束。
[0143]
在一种可能的实施方式中,终端在与该手肘内侧骨骼点相邻的位置上,创建第一参考点,该第一参考点为该手肘内侧骨骼点的子骨骼点,其中,与手肘内侧骨骼点相邻的位置由技术人员进行配置,比如配置为手肘内侧骨骼点左侧,或者配置为手肘内侧骨骼点下方等,或者配置为与手肘内侧骨骼点重合,本技术实施例对此不做限定。终端基于该第一参考点,创建该手肘内侧修形骨骼,将该手肘内侧修型骨骼配置为被第一参考点位置约束和旋转约束。在一些实施例中,终端在该第一参考点所在的位置上,创建该手肘内侧修型骨骼。由于第一参考点为该手肘内侧骨骼点的子骨骼点,那么该第一参考点也就被该手肘内侧骨骼点位置约束和旋转约束,那么该手肘内侧修型骨骼被第一参考点位置约束和旋转约束,也就表示该手肘内侧修型骨骼被该手肘内侧骨骼点位置约束和旋转约束。
[0144]
由于在之前步骤401

405中已经创建了手肘内侧骨骼点,并对手肘内侧骨骼点的位置约束和旋转约束进行了配置,通过创建第一参考点,并基于第一参考点来创建手肘内侧修型骨骼,能够在保证手肘内侧修型骨骼按照之前配置的位置约束和旋转约束进行运动的前提下,方便对手肘内侧修型骨骼的位置,也即是调整第一参考点的位置即可,效率较高。
[0145]
若没有创建第一参考点,那么手肘内侧修型骨骼只能创建在手肘内侧骨骼点所在的位置上,由于手肘内侧骨骼点始终位于手肘内侧参考点和手肘参考关节点之间的连线上,那么手肘内侧修型骨骼也就只能位于这条连接线上。技术人员也就无法将手肘内侧修型骨骼创建在其他位置上,通过设置第一参考点,技术人员拖动第一参考点就能够方便地实现对手肘内侧修型骨骼位置的调整,且手肘内侧修型骨骼的位置也不会被限制在手肘内侧参考点和手肘参考关节点之间的连线上,创建手肘内侧修型骨骼的自由度较高。
[0146]
参见图13,终端在骨骼点创建界面中显示该手肘内侧骨骼点1301,终端基于该手肘内侧骨骼点1301,创建第一参考点1302。终端将该第一参考点1302确定为该手肘内侧骨骼点1301的子骨骼点。终端在该第一参考点1302所在的位置上创建手肘内侧修型骨骼,将该手肘内侧修型骨骼配置为被该第一参考点1302位置约束和旋转约束。
[0147]
407、终端基于该手肘外侧骨骼点,创建手肘外侧修型骨骼,该手肘外侧修型骨骼被该手肘外侧骨骼点位置约束和旋转约束。
[0148]
在一种可能的实施方式中,终端在与该手肘外侧骨骼点相邻的位置上,创建第二参考点,该第二参考点被该手肘外侧骨骼点父约束,也即是该第二参考点为该手肘外侧骨骼点的子骨骼点,其中,与手肘外侧骨骼点相邻的位置由技术人员进行配置,比如配置为手肘外侧骨骼点左侧,或者配置为手肘外侧骨骼点下方等,或者配置为与手肘外侧骨骼点重
合,本技术实施例对此不做限定。终端基于该第二参考点,创建该手肘外侧修形骨骼,将该手肘外侧修型骨骼配置为被第二参考点位置约束和旋转约束。在一些实施例中,终端在该第二参考点所在的位置上,创建该手肘外侧修型骨骼。由于第二参考点为该手肘外侧骨骼点的子骨骼点,那么该第二参考点也就被该手肘外侧骨骼点位置约束和旋转约束,那么该手肘外侧修型骨骼被第二参考点位置约束和旋转约束,也就表示该手肘外侧修型骨骼被该手肘外侧骨骼点位置约束和旋转约束。
[0149]
由于在之前步骤401

405中已经创建了手肘外侧骨骼点,并对手肘外侧骨骼点的位置约束和旋转约束进行了配置,通过创建第二参考点,并基于第二参考点来创建手肘外侧修型骨骼,能够在保证手肘外侧修型骨骼按照之前配置的位置约束和旋转约束进行运动的前提下,方便对手肘外侧修型骨骼的位置,也即是调整第二参考点的位置即可,效率较高。
[0150]
若没有创建第二参考点,那么手肘外侧修型骨骼只能创建在手肘外侧骨骼点所在的位置上,由于手肘外侧骨骼点始终位于手肘外侧参考点和手肘参考关节点之间的连线上,那么手肘外侧修型骨骼也就只能位于这条连接线上。技术人员也就无法将手肘外侧修型骨骼创建在其他位置上,通过设置第二参考点,技术人员拖动第二参考点就能够方便地实现对手肘外侧修型骨骼位置的调整,且手肘外侧修型骨骼的位置也不会被限制在手肘外侧参考点和手肘参考关节点之间的连线上,创建手肘外侧修型骨骼的自由度较高。
[0151]
参见图13,终端在骨骼点创建界面中显示该手肘外侧骨骼点1303,终端基于该手肘外侧骨骼点1303,创建第二参考点1304。终端将该第二参考点1304配置为该手肘外侧骨骼点1303的子骨骼点,也即是将该第二参考点1304配置为被该手肘外侧骨骼点1303父约束。终端在该第二参考点1304所在的位置上创建手肘外侧修型骨骼,将该手肘外侧修型骨骼配置为被该第二参考点位置约束和旋转约束。
[0152]
408、终端基于该肩关节点,创建大臂肌肉缩放骨骼,该大臂肌肉缩放骨骼为该虚拟大臂的子骨骼。
[0153]
在一种可能的实施方式中,终端在与该肩关节点相邻的位置上,创建第三参考点和第四参考点,该第三参考点为该肩关节点的子骨骼点,该第四参考点为该第三参考点的子骨骼点,该第四参考点被该第一参考点朝向约束,其中,与肩关节点相邻的位置由技术人员进行配置,比如配置为肩关节点左侧,或者配置为肩关节点下方等,或者配置为与肩关节点重合,本技术实施例对此不做限定。终端在该第四参考点所在的位置上创建该第一参考骨骼,该第一参考骨骼被该第四参考点位置约束和旋转约束。终端在与该第一参考骨骼相邻的位置上创建该大臂肌肉缩放骨骼,该大臂肌肉缩放骨骼被该第一参考骨骼位置约束和旋转约束,其中,与第一参考骨骼点相邻的位置由技术人员进行配置,比如配置为第一参考骨骼点左侧,或者配置为第一参考骨骼点下方等,或者配置为与第一参考骨骼点重合,本技术实施例对此不做限定。技术人员通过调整第四参考点的位置,就能够对大臂肌肉缩放骨骼的位置进行调整,效率较高。在一些实施例中,终端能够通过look at(查看)函数来控制第四参考点被该第一参考点朝向约束,也即是该第四参考点始终“看向”第一参考点。参见图14,包括第四参考点1401和第一参考点1402,终端采用look at函数将第四参考点1401配置为被第一参考点1402朝向约束。
[0154]
举例来说,终端在骨骼点创建界面中显示虚拟手臂骨骼以及创建好的肩关节点。
响应于基于该肩关节点的操作,在与该肩关节点相邻的位置上,创建第三参考点,将该第三参考点配置为被肩关节点父约束,第三参考点也即是肩关节点的子骨骼点。响应于基于该第三参考点的操作,在与该第三参考点相邻的位置上创建第四参考点,将该第四参考点配置为被该第三参考点父约束,第四参考点也即是第三参考点的子骨骼点,其中,与第三参考点点相邻的位置由技术人员进行配置,比如配置为第三参考点点左侧,或者配置为第三参考点点下方等,或者配置为与第三参考点点重合,本技术实施例对此不做限定。响应于基于第四参考点的操作,将该第四参考点配置为被第一参考点朝向约束,该第四参考点被第一参考点朝向约束是指,该第四参考点的一个坐标轴被配置为始终朝向第一参考点。在一些实施例中,终端将第四参考点的x轴配置为始终朝向第一参考点。终端在第四参考点所在的位置上创建第一参考骨骼,将该第一参考骨骼配置为被第四参考点位置约束和旋转约束。终端在与该第一参考骨骼相邻的位置上创建该大臂肌肉缩放骨骼,将该大臂肌肉缩放骨骼配置为被虚拟大臂父约束,也即是该虚拟大臂肌肉缩放骨骼为虚拟大臂的子骨骼,将该大臂肌肉缩放骨骼配置为被该第一参考骨骼位置约束和旋转约束。在一些实施例中,该大臂肌肉缩放骨骼被该第一参考骨骼的位置约束比为1,旋转约束比也为1。
[0155]
参见图15,包括手肘内侧修型骨骼1501、手肘外侧修型骨骼1502、大臂肌肉缩放骨骼1503、第一参考点1504、第四参考点1505以及第一参考骨骼1506。
[0156]
在一种可能的实施方式中,该大臂肌肉缩放骨骼的缩放比例的确定方法包括:
[0157]
终端获取第一距离,该第一距离为该虚拟手臂骨骼未运动时,该大臂肌肉缩放骨骼与该手肘内侧修形骨骼之间的距离。终端将第二距离与该第一距离的比值确定为该大臂肌肉缩放骨骼的缩放比例,该第二距离为该虚拟手臂骨骼运动时,该大臂肌肉缩放骨骼与该手肘内侧修形骨骼之间的距离。
[0158]
在一些实施例中,若dcc软件为虚幻引擎(unreal engine,ue),技术人员能够通过蓝图来确定第一距离和第二距离。参见图16,x5为大臂肌肉缩放骨骼,x4为手肘内侧修形骨骼,24.674389为确定出的第一距离。
[0159]
参见图17,技术人员能够通过蓝图来配置位置约束和旋转约束,也即是通过蓝图,将手肘内侧修型骨骼配置为被p1位置约束和旋转约束,位置约束比和旋转约束比均配置为1,p1也即是手肘内侧骨骼点。技术人员通过蓝图,将手肘外侧修型骨骼配置为被p2位置约束和旋转约束,位置约束比和旋转约束比均配置为1,p2也即是手肘外侧骨骼点。技术人员通过蓝图,将大臂肌肉缩放骨骼配置为被第一参考骨骼位置约束、旋转约束和缩放约束,位置约束比、旋转约束比和缩放约束(scale)比均配置为1。
[0160]
409、终端基于该手肘内侧修形骨骼、该手肘外侧修型骨骼、该大臂肌肉缩放骨骼、该肩关节点、该手肘关节点以及该手腕关节点,对该虚拟手臂骨骼进行蒙皮,得到该虚拟手臂模型。
[0161]
在一种可能的实施方式中,终端对该虚拟手臂骨骼进行蒙皮过程,也即是将初始虚拟手臂模型与虚拟手臂骨骼进行绑定的过程,初始虚拟手臂骨骼也即是动画人员制作的虚拟手臂模型,该虚拟手臂模型具有多个顶点,终端能够将该手肘内侧修形骨骼、该手肘外侧修型骨骼、该大臂肌肉缩放骨骼、该肩关节点、该手肘关节点以及该手腕关节点与初始手臂模型中的对应顶点进行绑定,得到虚拟手臂模型。绑定成功之后,后续通过调整虚拟手臂骨骼中虚拟大臂、虚拟小臂或者虚拟手掌的位置,就能够带动虚拟手臂模型进行运动。绑定
效果的示例参见图18,1801为手臂收紧的示意图,1802为手臂舒展的示意图。
[0162]
参见图19,1901为采用本技术实施例提供的虚拟手臂骨骼的蒙皮方法后得到的虚拟手臂模型的显示效果,采用上述步骤401,也就完成了大臂肌肉缩放、手肘形体修复以及肘窝形体修复三个目标,1902为本技术实施例提供的虚拟手臂骨骼的蒙皮方法后得到的虚拟手臂模型的显示效果,可以看出,采用本技术实施例提供的技术方案之后,虚拟手臂模型肘窝处的显示效果更加真实。
[0163]
在一些实施例中,上述步骤401

409还能够与inverse kinematics(反向动力学,ik)功能结合,结合的结果参见图20,2001为未使用本技术实施例提供的虚拟手臂骨骼的蒙皮方法后开启ik得到的虚拟手臂模型,可以看出,虚拟手掌与虚拟小臂之间的方向存在错误。2002为使用本技术实施例提供的虚拟手臂骨骼的蒙皮方法后开启ik得到的虚拟手臂模型,可以看出,虚拟手掌与虚拟小臂之间的配合较好。
[0164]
在一些实施例中,终端能够将上述步骤401

409封装为一个插件,这样在后续使用过程中,技术人员只需在应用程序中加载该插件,在插件中选择虚拟大臂、虚拟小臂以及虚拟手掌,即可自动执行上述步骤401

409,以实现对虚拟手臂骨骼的蒙皮,效率较高。
[0165]
上述所有可选技术方案,可以采用任意结合形成本技术的可选实施例,在此不再一一赘述。
[0166]
通过本技术实施例提供的技术方案,基于肩关节点、手肘关节点和手腕关节点创建出了手肘内侧骨骼点和手肘外侧骨骼点,手肘内侧骨骼点能够模拟虚拟手臂骨骼手肘内侧的形态变化,手肘外侧骨骼点能够模拟虚拟手臂骨骼手肘外侧的形态变化。基于肩关节点、手肘关节点、手腕关节点、手肘内侧骨骼点以及手肘外侧骨骼点进行蒙皮,得到虚拟手臂模型,由于手肘内侧骨骼点和手肘外侧骨骼点的存在,使得虚拟手臂模型的手肘在运动过程中与真实手臂更加接近,虚拟手臂模型更加真实,蒙皮效果较好。
[0167]
图21是本技术实施例提供的一种虚拟手臂骨骼的蒙皮装置结构示意图,参见图21,装置包括:关节点创建模块2101、骨骼点创建模块2102以及蒙皮模块2103。
[0168]
关节点创建模块2101,用于在虚拟手臂骨骼中创建肩关节点、手肘关节点以及手腕关节点。
[0169]
骨骼点创建模块2102,用于基于该肩关节点、该手肘关节点以及该手腕关节点,创建该虚拟手臂骨骼的手肘内侧骨骼点和手肘外侧骨骼点,该手肘内侧骨骼点用于模拟该虚拟手臂骨骼的手肘内侧的形态变化,该手肘外侧骨骼点用于模拟该虚拟手臂骨骼的手肘外侧的形态变化。
[0170]
蒙皮模块2103,用于基于该肩关节点、该手肘关节点、该手腕关节点、该手肘内侧骨骼点以及该手肘外侧骨骼点,对该虚拟手臂骨骼进行蒙皮,得到虚拟手臂模型。
[0171]
在一种可能的实施方式中,该虚拟手臂骨骼的该手肘内侧骨骼点基于该虚拟手臂骨骼的手肘内侧参考点创建,该手肘内侧参考点随着该肩关节点、该手肘关节点以及该手腕关节点中的任一个点的运动而运动。
[0172]
该虚拟手臂骨骼的该手肘外侧骨骼点基于该虚拟手臂骨骼的手肘外侧参考点创建,该手肘外侧参考点随着该手肘内侧参考点的运动而运动。
[0173]
在一种可能的实施方式中,该骨骼点创建模块2102,该虚拟手臂骨骼包括虚拟大臂、虚拟小臂以及虚拟手掌,该虚拟大臂、该虚拟小臂以及该虚拟手掌顺次相连,用于基于
该肩关节点、该手肘关节点以及该手腕关节点,创建该虚拟手臂骨骼的手肘内侧参考点,该手肘内侧参考点被该虚拟大臂、该虚拟小臂以及该虚拟手掌共同位置约束,该手肘内侧参考点被该虚拟大臂以及该虚拟小臂共同旋转约束。基于该手肘关节点和该手肘内侧参考点,创建该手肘内侧骨骼点,该手肘内侧骨骼点被该手肘内侧参考点位置约束和旋转约束。基于该手肘关节点和该手肘内侧参考点,创建该虚拟手臂骨骼的手肘外侧参考点,该手肘外侧参考点被该手肘内侧参考点位置约束。基于该手肘关节点和该手肘外侧参考点,创建该手肘外侧骨骼点,该手肘外侧骨骼点被该手肘外侧参考点位置约束,该手肘外侧骨骼点被该手肘内侧参考点旋转约束。
[0174]
在一种可能的实施方式中,该骨骼点创建模块2102,用于在该肩关节点、该手肘关节点以及该手腕关节点的中心点,创建该虚拟手臂骨骼的手肘内侧参考点。
[0175]
在一种可能的实施方式中,该骨骼点创建模块2102,用于在该手肘关节点所在的位置创建手肘关节参考点,该手肘关节参考点被该虚拟大臂位置约束,该手肘关节参考点被该手肘内侧参考点旋转约束。
[0176]
基于第一权重,在该手肘关节参考点和该手肘内侧参考点的连线上,创建该手肘内侧骨骼点,该第一权重与第一距离正相关,该第一距离为该手肘内侧骨骼点与该手肘关节参考点之间的距离。
[0177]
在一种可能的实施方式中,该骨骼点创建模块2102,用于基于第二权重,在该手肘关节参考点和该手肘外侧参考点的连线上,创建该手肘外侧骨骼点,该第二权重与第二距离正相关,该第二距离为该手肘外侧骨骼点与该手肘关节参考点之间的距离。
[0178]
在一种可能的实施方式中,该骨骼点创建模块2102,用于在该手肘关节点和该手肘内侧参考点连线的延长线上,创建该手肘外侧参考点,该手肘外侧参考点与该手肘关节点之间的距离与该手肘关节点和该手肘内侧参考点之间的距离相同。
[0179]
在一种可能的实施方式中,该基蒙皮模块2103,用于基于该手肘内侧骨骼点,创建手肘内侧修形骨骼,该手肘内侧修形骨骼被该手肘内侧骨骼点位置约束和旋转约束。
[0180]
基于该手肘外侧骨骼点,创建手肘外侧修型骨骼,该手肘外侧修型骨骼被该手肘外侧骨骼点位置约束和旋转约束。
[0181]
基于该肩关节点,创建大臂肌肉缩放骨骼,该大臂肌肉缩放骨骼为该虚拟大臂的子骨骼。
[0182]
基于该手肘内侧修形骨骼、该手肘外侧修型骨骼、该大臂肌肉缩放骨骼、该肩关节点、该手肘关节点以及该手腕关节点,对该虚拟手臂骨骼进行蒙皮,得到该虚拟手臂模型。
[0183]
在一种可能的实施方式中,该基蒙皮模块2103,用于在与该手肘内侧骨骼点相邻的位置上,创建第一参考点,该第一参考点为该手肘内侧骨骼点的子骨骼点。基于该第一参考点,创建该手肘内侧修形骨骼。
[0184]
在一种可能的实施方式中,该基蒙皮模块2103,用于在与该手肘外侧骨骼点相邻的位置上,创建第二参考点,该第二参考点被该手肘外侧骨骼点父约束。基于该第二参考点,创建该手肘外侧修形骨骼。
[0185]
在一种可能的实施方式中,该基蒙皮模块2103,用于在与该肩关节点相邻的位置上,创建第三参考点和第四参考点,该第三参考点为该肩关节点的子骨骼点,该第四参考点为该第三参考点的子骨骼点,该第四参考点被该第一参考点朝向约束。在该第四参考点所
在的位置上创建该第一参考骨骼,该第一参考骨骼被该第四参考点位置约束和旋转约束。在与该第一参考骨骼相邻的位置上创建该大臂肌肉缩放骨骼,该大臂肌肉缩放骨骼被该第一参考骨骼位置约束和旋转约束。
[0186]
在一种可能的实施方式中,该装置还包括,缩放比例确定模块,用于获取第一距离,该第一距离为该虚拟手臂骨骼未运动时,该大臂肌肉缩放骨骼与该手肘内侧修形骨骼之间的距离。将第二距离与该第一距离的比值确定为该大臂肌肉缩放骨骼的缩放比例,该第二距离为该虚拟手臂骨骼运动时,该大臂肌肉缩放骨骼与该手肘内侧修形骨骼之间的距离。
[0187]
在一种可能的实施方式中,该虚拟手臂骨骼包括虚拟大臂、虚拟小臂以及虚拟手掌,该虚拟大臂、该虚拟小臂以及该虚拟手掌顺次相连,该关节点创建模块2101,用于在该虚拟大臂的起点创建该肩关节点,该肩关节点被该虚拟大臂位置约束和旋转约束。在该虚拟大臂和该虚拟小臂的连接位置创建该手肘关节点,该手肘关节点被该虚拟小臂位置约束和旋转约束。在该虚拟小臂和该虚拟手掌的连接位置创建该手腕关节点,该手腕关节点被该虚拟手掌位置约束和旋转约束。
[0188]
需要说明的是:上述实施例提供的虚拟手臂骨骼的蒙皮装置在对虚拟手臂骨骼进行蒙皮时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的虚拟手臂骨骼的蒙皮装置与虚拟手臂骨骼的蒙皮方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0189]
通过本技术实施例提供的技术方案,基于肩关节点、手肘关节点和手腕关节点创建出了手肘内侧骨骼点和手肘外侧骨骼点,手肘内侧骨骼点能够模拟虚拟手臂骨骼手肘内侧的形态变化,手肘外侧骨骼点能够模拟虚拟手臂骨骼手肘外侧的形态变化。基于肩关节点、手肘关节点、手腕关节点、手肘内侧骨骼点以及手肘外侧骨骼点进行蒙皮,得到虚拟手臂模型,由于手肘内侧骨骼点和手肘外侧骨骼点的存在,使得虚拟手臂模型的手肘在运动过程中与真实手臂更加接近,虚拟手臂模型更加真实,蒙皮效果较好。
[0190]
本技术实施例提供了一种计算机设备,用于执行上述方法,该计算机设备可以实现为终端或者服务器,下面先对终端的结构进行介绍:
[0191]
图22是本技术实施例提供的一种终端的结构示意图。该终端2200可以是:智能手机、平板电脑、笔记本电脑或台式电脑。终端2200还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
[0192]
通常,终端2200包括有:一个或多个处理器2201和一个或多个存储器2202。
[0193]
处理器2201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器2201可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器2201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器2201可以在集成有gpu(graphics processing unit,图像处理器),
gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器2201还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0194]
存储器2202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器2202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器2202中的非暂态的计算机可读存储介质用于存储至少一个计算机程序,该至少一个计算机程序用于被处理器2201所执行以实现本技术中方法实施例提供的虚拟手臂骨骼的蒙皮方法。
[0195]
在一些实施例中,终端2200还可选包括有:外围设备接口2203和至少一个外围设备。处理器2201、存储器2202和外围设备接口2203之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口2203相连。具体地,外围设备包括:射频电路2204、显示屏2205、摄像头组件2206、音频电路2207、定位组件2208和电源2209中的至少一种。
[0196]
外围设备接口2203可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器2201和存储器2202。在一些实施例中,处理器2201、存储器2202和外围设备接口2203被集成在同一芯片或电路板上;在一些其他实施例中,处理器2201、存储器2202和外围设备接口2203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
[0197]
射频电路2204用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路2204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路2204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路2204包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。
[0198]
显示屏2205用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏2205是触摸显示屏时,显示屏2205还具有采集在显示屏2205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器2201进行处理。此时,显示屏2205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。
[0199]
摄像头组件2206用于采集图像或视频。可选地,摄像头组件2206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。
[0200]
音频电路2207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器2201进行处理,或者输入至射频电路2204以实现语音通信。
[0201]
定位组件2208用于定位终端2200的当前地理位置,以实现导航或lbs(location based service,基于位置的服务)。
[0202]
电源2209用于为终端2200中的各个组件进行供电。电源2209可以是交流电、直流电、一次性电池或可充电电池。
[0203]
在一些实施例中,终端2200还包括有一个或多个传感器2210。该一个或多个传感器2210包括但不限于:加速度传感器2211、陀螺仪传感器2212、压力传感器2213、指纹传感
器2214、光学传感器2215以及接近传感器2216。
[0204]
加速度传感器2211可以检测以终端2200建立的坐标系的三个坐标轴上的加速度大小。
[0205]
陀螺仪传感器2212可以终端2200的机体方向及转动角度,陀螺仪传感器2212可以与加速度传感器2211协同采集用户对终端2200的3d动作。
[0206]
压力传感器2213可以设置在终端2200的侧边框和/或显示屏2205的下层。当压力传感器2213设置在终端2200的侧边框时,可以检测用户对终端2200的握持信号,由处理器2201根据压力传感器2213采集的握持信号进行左右手识别或快捷操作。当压力传感器2213设置在显示屏2205的下层时,由处理器2201根据用户对显示屏2205的压力操作,实现对ui界面上的可操作性控件进行控制。
[0207]
指纹传感器2214用于采集用户的指纹,由处理器2201根据指纹传感器2214采集到的指纹识别用户的身份,或者,由指纹传感器2214根据采集到的指纹识别用户的身份。
[0208]
光学传感器2215用于采集环境光强度。在一个实施例中,处理器2201可以根据光学传感器2215采集的环境光强度,控制显示屏2205的显示亮度。
[0209]
接近传感器2216用于采集用户与终端2200的正面之间的距离。
[0210]
本领域技术人员可以理解,图22中示出的结构并不构成对终端2200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
[0211]
上述计算机设备还可以实现为服务器,下面对服务器的结构进行介绍:
[0212]
图23是本技术实施例提供的一种服务器的结构示意图,该服务器2300可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(central processing units,cpu)2301和一个或多个的存储器2302,其中,所述一个或多个存储器2302中存储有至少一条计算机程序,所述至少一条计算机程序由所述一个或多个处理器2301加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器2300还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器2300还可以包括其他用于实现设备功能的部件,在此不做赘述。
[0213]
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括计算机程序的存储器,上述计算机程序可由处理器执行以完成上述实施例中的虚拟手臂骨骼的蒙皮方法。例如,该计算机可读存储介质可以是只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、只读光盘(compact disc read

only memory,cd

rom)、磁带、软盘和光数据存储设备等。
[0214]
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述虚拟手臂骨骼的蒙皮方方法。
[0215]
在一些实施例中,本技术实施例所涉及的计算机程序可被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链系统。
[0216]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件
来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0217]
上述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1