虚拟形象的处理方法及相关产品与流程

未命名 10-08 阅读:89 评论:0


1.本技术涉及图像处理技术领域,尤其涉及一种虚拟形象的处理方法、一种虚拟形象的处理装置、一种计算机设备、一种计算机可读存储介质及一种计算机程序产品。


背景技术:

2.个人虚拟形象作为个人形象资产,由于可提供自由灵活的人物形象、装扮和场景,具备非常个性化的表现能力。目前虚拟形象和一些社交产品的结合十分紧密,基于虚拟形象的社交可以让社交对象在虚拟的社交空间中体验到更丰富的交互乐趣。
3.虚拟形象展示是虚拟形象社交中的重要内容。然而大多数基于虚拟形象的社交产品对于虚拟形象在各个场景下的展示是固定且生硬的,虚拟形象没有动作且缺少神情变化,导致虚拟形象在各个场景下的展示比较呆板,不够生动。为此,让虚拟形象在各个场景中进行生动的神态以及肢体变化十分有必要,而采用何种虚拟形象展示逻辑来打造出更加生动有趣的虚拟形象是值得研究的问题。


技术实现要素:

4.本技术实施例提供一种虚拟形象的处理方法及相关产品,可以基于交互操作在社交界面中打造独立的虚拟形象的形态动画反馈,从而使得虚拟形象的展示生动有趣,提高基于虚拟形象的社交产品的留存和粘性。
5.本技术实施例一方面提供了一种虚拟形象的处理方法,包括:
6.在社交界面中播放虚拟形象的第一形态动画,社交界面设有至少一个分区,每个分区与虚拟形象的至少一种形态动画相匹配;
7.当社交界面中存在交互操作时,确定交互操作所触发的目标分区,目标分区为社交界面中的任一个分区;
8.在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
9.本技术实施例一方面提供了一种虚拟形象的处理装置,包括:
10.播放模块,用于在社交界面中播放虚拟形象的第一形态动画,社交界面设有至少一个分区,每个分区与虚拟形象的至少一种形态动画相匹配;
11.确定模块,用于当社交界面中存在交互操作时,确定交互操作所触发的目标分区,目标分区为社交界面中的任一个分区;
12.播放模块,还用于在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
13.在一个实施例中,社交界面沿预设方向依次设置至少一个分区,每个分区对应预设方向上的一个区域范围;确定模块,具体用于:当社交界面存在交互操作时,获取交互操作在预设方向上的操作信息;基于操作信息与每个分区在预设方向上的区域范围之间的关系,确定交互操作所触发的目标分区。
14.在一个实施例中,操作信息包括:操作起始点和操作结束点;确定模块,具体用于:
将操作结束点所属区域范围对应的分区,确定为交互操作所触发的目标分区;或者,根据操作起始点和操作结束点确定交互操作的操作幅度,将操作幅度所属区域范围对应的分区,确定为交互操作所触发的目标分区。
15.在一个实施例中,分区分为无响应分区和响应分区;虚拟形象的处理装置还包括执行模块,用于:若目标分区属于响应分区,则基于交互操作对社交界面执行响应操作。
16.在一个实施例中,响应分区包括刷新分区和全屏分区;执行模块,具体用于:若目标分区为刷新分区,则刷新社交界面;或者,若目标分区为全屏分区,则切换社交界面。
17.在一个实施例中,播放模块,还用于:若目标分区为刷新分区,则当社交界面刷新完毕后,在刷新后的社交界面中重新播放虚拟形象的第一形态动画;或者,若目标分区为全屏分区,则当社交界面切换完成后,在切换后的社交界面中重新播放虚拟形象的第一形态动画。
18.在一个实施例中,切换后的社交界面为虚拟形象的编辑界面,虚拟形象的处理装置还包括更新模块,用于:响应于编辑界面中对虚拟形象进行个性化编辑的编辑指令,更新虚拟形象。
19.在一个实施例中,播放模块,还用于:当虚拟形象从一种形态动画切换为另一种形态动画进行播放时,在切换过程中播放过渡动画。
20.在一个实施例中,播放模块,具体用于:检测缓存中是否存在虚拟形象的第一形态动画的动画文件;若存在,则从缓存中读取虚拟形象的第一形态动画的动画文件;若不存在,则调用虚幻引擎处理得到虚拟形象的第一形态动画的动画文件;基于虚拟形象的第一形态动画的动画文件,在社交界面中播放虚拟形象的第一形态动画。
21.在一个实施例中,播放模块,具体用于:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景进行上屏渲染,得到虚拟形象的第一形态动画的动画文件。
22.在一个实施例中,播放模块,具体用于:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景设置虚拟录制位置;调用虚幻引擎基于加载的资源和场景,以及基于虚拟录制位置对虚拟形象的第一形态动画的呈现画面进行离屏录制,得到虚拟形象的第一形态动画的动画文件。
23.在一个实施例中,虚拟形象的处理装置还包括缓存模块,用于:缓存离屏录制获得的虚拟形象的第一形态动画的动画文件;其中,缓存中还包含通过离屏录制获得的虚拟形象的各种形态动画的动画文件,以及包含虚拟形象的各种形态动画之间切换时所需的过渡动画。
24.在一个实施例中,应用服务器中存储有虚拟形象的n个动画文件的缓存地址,n为正整数,每个缓存地址绑定有虚拟形象的标识信息;播放模块,还用于:获取虚拟形象的标识信息;从应用服务器中存储的n个缓存地址中查找与标识信息匹配的目标缓存地址;基于目标缓存地址从缓存中获取虚拟形象的第一形态动画的动画文件。
25.本技术实施例一方面提供了一种计算机设备,包括:处理器、存储器以及网络接口;处理器与存储器、网络接口相连,其中,网络接口用于提供网络通信功能,存储器用于存储程序代码,处理器用于调用程序代码,以执行本技术实施例中的虚拟形象的处理方法。
26.本技术实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序当被处理器执行时,执行本技术实施例中的虚拟形象的处理方法。
27.相应的,一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序当被处理器执行时,执行本技术实施例中一方面提供的虚拟形象的处理方法。
28.在本技术实施例中,社交界面中可播放虚拟形象的第一形态动画,对虚拟形象的形态进行动态展示,当社交界面中存在交互操作时,通过确定交互操作在社交界面中所触发的目标分区,可在社交界面中播放虚拟形象的第二形态动画。可见,基于交互操作,当前播放的虚拟形象的第一形态动画可更新为播放第二形态动画。进一步地,在社交界面展示的虚拟形象可跟随交互操作触发的不同分区而展示相同或者不同的形态动画,从而为社交界面打造基于交互操作的独立虚拟形象的形态动画反馈,使得虚拟形象的展示生动有趣,强化基于虚拟形象的社交互动,进而有效提高基于虚拟形象的社交产品的留存和粘性。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
30.图1a是本技术一个示例性实施例提供的一种静态展示虚拟形象的示意图;
31.图1b是本技术一个示例性实施例提供的一种虚拟形象的处理系统的架构图;
32.图2是本技术一个示例性实施例提供的一种虚拟形象的处理方法的流程示意图一;
33.图3a是本技术一个示例性实施例提供的一种虚拟形象的第一形态动画的示意图;
34.图3b是本技术一个示例性实施例提供的一种虚拟形象初始呈现的示意图;
35.图3c是本技术一个示例性实施例提供的一种社交界面的分区设置的示意图;
36.图3d是本技术一个示例性实施例提供的一种虚拟形象的过渡动画的示意图;
37.图4是本技术一个示例性实施例提供的一种虚拟形象的处理方法的流程示意图二;
38.图5a是本技术一个示例性实施例提供的一种切换后的社交界面的示意图;
39.图5b是本技术一个示例性实施例提供的一种分区管理的示意图;
40.图6是本技术一个示例性实施例提供的一种虚拟形象的处理方法的流程示意图三;
41.图7a是本技术一个示例性实施例提供的一种业务流程划分的示意图;
42.图7b是本技术一个示例性实施例提供的一种实时渲染虚拟形象的流程示意图;
43.图7c是本技术一个示例性实施例提供的一种离屏录制的交互流程示意图;
44.图7d是本技术一个示例性实施例提供的另一种业务流程划分的示意图;
45.图7e是本技术一个示例性实施例提供的一种动画文件上传以及下载的交互流程示意图;
46.图8是本技术一个示例性实施例提供的一种虚拟形象的处理装置的结构示意图;
47.图9是本技术一个示例性实施例提供的一种计算机设备的结构示意图。
具体实施方式
48.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
49.为了更好地理解本技术实施例的方案,下面先对本技术实施例可能涉及的相关术语和概念进行介绍。
50.虚拟形象:虚拟形象是根据预设的多维(包括二维或者三维)模型和设置的装扮信息生成的形象。例如三维模型可以是基于预设的骨骼数据和蒙皮数据生成的模型。装扮信息包括但不限于:虚拟首饰的首饰数据、虚拟衣服的衣服数据、虚拟鞋子的鞋子数据、虚拟道具的道具数据。虚拟形象包括个人虚拟形象,个人虚拟形象是重要的个人形象资产,可以是代表单个对象的虚拟人物形象,本技术实施例中虚拟形象是指个人虚拟形象。
51.形态动画:本技术中形态动画是指将虚拟形象的形态进行动态呈现的内容。其中,虚拟形象的形态可展示虚拟形象当前所处的状态,包括虚拟形象的动作、表情等。基于形态动画对虚拟形象的形态展示是动态的。
52.社交客户端:社交客户端可以是指与服务器相对应,为客户提供本地服务的社交app(application,应用程序),例如社交客户端可包括但不限于:即时通信app、地图社交app、内容交互app、游戏社交app、免安装app(一种无需下载安装即可使用的应用,例如小程序)等等;社交客户端也可以是指与服务器相对应,为客户提供本地服务的具备社交会话功能的网站,例如社交网站、论坛等等。
53.社交界面:社交界面是指社交客户端提供的功能服务界面。社交界面包括但不限于:用于社交对象之间进行互动的社交互动界面(例如和其他社交对象实时发布的动态进行互动的动态页面),用于对虚拟形象进行编辑的编辑界面(例如支持对虚拟形象进行个性化装扮的换装页面)、用于提供社交对象的身份展示功能的身份展示界面(例如个人资料页面)等等。虚拟形象可以展示在社交界面中,对于虚拟形象的展示可以是静态或者是动态的,示例性地,请参见图1a,图1a是本技术一个示例性实施例提供的一种静态展示虚拟形象的示意图。基于虚拟形象的社交产品支持在个人页面1101中展示个人虚拟形象,在个人页面1101进行下拉可以切换到个人虚拟形象的编辑页面1102,在该编辑页面支持对虚拟形象的个性化换装等功能,该场景下展示的个人虚拟形象固定且无动作,神情没有变化,即虚拟形象的形态是静态呈现的。
54.虚幻引擎:是指ue4,英文全称unreal engine 4,中文可译为“虚幻引擎4”(下述简称为“ue4”或者“虚幻引擎”)。虚幻引擎4是一套为游戏开发者设计的集成工具,利用虚幻引擎可以构建游戏模拟和可视化,还可以对虚拟形象进行构建和渲染。
55.离屏录制:离屏录制是指不用实时渲染至屏幕的录制。本技术中离屏录制是基于虚幻引擎ue4的多场景渲染等特性开发的,任何有虚拟形象曝光的场景(例如游戏、个性化装扮、有虚拟形象显示的动态页面等等)都可以接入离屏录制功能,通过离屏录制功能可以在对象无感知的情况下基于最新的虚拟形象静默录制动画并展示。
56.蓝图(blueprint):是指虚幻引擎中的可视化脚本,在ue4中蓝图可以使用直观、基于节点的方式创建逻辑,或者设置一些变量数据。以基于节点和连线使用图形化的方式创建逻辑流程是蓝图的优势之一,由于其不必输出任何实际的代码,即无需开发者编写代码,进而能够极大地方便开发者对项目进行迭代。利用蓝图可以进行数据资源配置、创建ui界面等等。本技术中蓝图可以用于创建虚拟形象。
57.cdn:英文全称,content delivery network,中文全称,内容分发网络。是一种将内容缓存在终端对象附近的技术。cdn采用更多的缓存服务器(也称为cdn边缘节点),布放在对象(例如社交对象)访问相对集中的地区或者网络中,当对象访问网络时,利用全局负载技术,将对象的访问指向距离最近的缓存服务器上,由缓存服务器响应对象请求。采用cdn由于对象与内容之间的物理距离缩短,访问的等待时间也得以缩短,进而加速了网站的访问。
58.基于上述术语及概念,下面将结合附图,对本技术实施例提供的虚拟形象的处理系统的架构进行介绍。
59.请参见图1b,图1b是本技术一个示例性实施例提供的一种虚拟形象的处理系统的架构图。如图1b所示,该虚拟形象的处理系统100包括终端设备101、缓存服务器102以及应用服务器103,终端设备101可以和缓存服务器102以及应用服务器103之间通过有线或无线的方式建立通信连接。
60.终端设备101中运行有社交客户端,终端设备101可以显示社交客户端提供的社交界面,并在社交界面中跟随交互操作触发的不同分区动态地呈现虚拟形象不同或者不同的形态,即在社交界面中播放虚拟形象的形态动画。通过动画形式动态地展示虚拟形象的形态,对交互操作进行相应的虚拟形象的形态动画反馈,可以从而打造出生动有趣的虚拟形象展示。在一个实施例中,虚幻引擎可以打包为基于动态库的组件形式,搭载在社交客户端中,此外,用于上传动画文件的上传模块以及用于下载动画文件的下载模块也可以搭载在社交客户端中。终端设备101包括但不限于:智能手机、平板电脑、智能可穿戴设备、智能语音交互设备、智能家电、个人电脑、车载终端等等设备,本技术对此不作限制。对于终端设备的数量,本技术不做限制。
61.缓存服务器102可用于缓存有关虚拟形象的动画文件,这些动画文件是在社交界面中通过触发离屏录制模块,基于虚拟形象进行离屏录制而产生的动态序列帧动画。动画文件可以包括用于表示虚拟形象的不同形态动画、以及虚拟形象的两种不同形态动画切换过程中所需的过渡动画。在一个实施例中,缓存服务器102在动画文件保存之后还可以设置该动画文件的缓存地址,并将该缓存地址发送给终端设备101,之后由终端设备101将该缓存地址保存到应用服务器103中,以使得后续需要使用对应动画文件时,从应用服务器103中获取存储的缓存地址,并基于该缓存地址从缓存服务器102中获取动画文件。
62.应用服务器103可用于存储动画文件缓存至缓存服务器102之后回传的缓存地址,并支持社交客户端对虚拟形象的动画文件的记录进行访问,以将对应的缓存地址下发给终端设备101中运行的社交客户端。可选地,针对离屏录制或者是上屏渲染所需的资源和场景可以基于虚拟形象的动画参数从资源管理服务器(图1b中未示出)中获取,进而基于该资源和场景生成有关虚拟形象的动画文件。
63.缓存服务器102、应用服务器103以及资源管理服务器均可以是独立的物理服务
器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。对于服务器的数量,本技术不做限制。
64.下面基于本实施例提供的虚拟形象的处理系统中各端之间的交互流程进行介绍。需要说明的是,虚拟形象是指个人虚拟形象。
65.1)终端设备101在社交界面中播放虚拟形象的第一形态动画。
66.社交界面可以是社交客户端提供的功能服务界面,例如动态页、换装页等等,在一个实施例中,在社交界面中播放的第一形态动画可以是调用虚幻引擎对虚拟形象上屏渲染得到的,也可以是通过终端设备从应用服务器103中获取缓存地址,并基于获取到的缓存地址从缓存服务器102中获取动画文件得到的。可选地,当调用虚幻引擎对虚拟形象进行上屏渲染时,还可以通过虚幻引擎中的离屏录制模块对虚拟形象的形态动画进行离屏录制,得到动画文件并缓存至缓存服务器102中。
67.2)当社交界面中存在交互操作时,确定交互操作所触发的目标分区。
68.终端设备101可以实时地检测社交界面中是否存在交互操作,当检测到社交界面中存在交互操时,由于社交界面中设有至少一个分区,可以确定交互操作触发的目标分区。在一种实现方式中,至少一个分区是沿预设方向设定的分区,交互操作对应有预设方向上的操作信息,可以基于交互操作在社交界面中的操作信息确定该交互操作所触发的目标分区,包括将操作结束点所属的分区确定为交互操作触发的目标分区,或者是将操作幅度所属区域范围的分区确定为交互操作所触发的目标分区。
69.3)终端设备101在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
70.由于社交界面中设定的各个分区与虚拟形象的一种形态动画相匹配,因此,交互操作所触发的目标分区相匹配的第二形态动画可能是与第一形态动画相同的,也可能是不同的。在一个实施例中,对于虚拟形象的第二形态动画,也可以根据不同情况调用虚幻引擎对该虚拟形象的第二形态动画的呈现画面进行上屏渲染,或者是从缓存服务器102中直接获取第二形态动画的动画文件。
71.本技术实施例提供的虚拟形象的处理系统,终端设备101中运行的社交客户端可以显示社交界面,并在社交界面中播放虚拟形象的第一形态动画,终端设备101还可以响应于社交界面中的交互操作,并根据该交互操作所触发的目标分区播放该目标分区相匹配的虚拟形象的第二形态动画,可见,虚拟形象的形态动画可以跟随交互操作所触发的不同分区进行展示,基于交互操作反馈的虚拟形象的形态动画可能是不同的,这样虚拟形象可以随交互操作产生变化,从而使得虚拟形象的展示更加生动有趣,有利于强化基于虚拟形象的社交互动,提高基于虚拟形象的社交产品的留存和粘性。
72.下面结合附图,对本技术实施例提出的虚拟形象的处理方法的具体实现方式进行详细阐述。需要说明的是,本技术实施例中,除特别说明之外,虚拟形象均是以个人虚拟形象为例进行说明的,即下述的虚拟形象具体是指个人虚拟形象。
73.请参见图2,图2是本技术一个示例性实施例提供的一种虚拟形象的处理方法的流程示意图一。该虚拟形象的处理方法可以由计算机设备(如图1b中的终端设备101)来执行,
计算机设备中运行有社交客户端,虚拟形象应用于该客户端,该虚拟形象的处理方法包括但不限于以下步骤。
74.s201,在社交界面中播放虚拟形象的第一形态动画。
75.社交界面是指社交客户端提供的服务界面,社交界面包括但不限于:为社交对象提供社交互动功能的社交互动界面,例如可以查看好友的动态信息的动态页面;用于提供虚拟形象的个性化编辑功能的编辑界面,例如虚拟形象的换装页面;用于提供社交对象身份展示功能的对象身份展示界面,例如个人资料页面。此处的社交界面可以是以上的任一种,例如社交界面为动态页面,在这些社交界面中均可以显示虚拟形象,并且虚拟形象可以静态或者是动态的呈现,在虚拟形象动态呈现时,可基于播放虚拟形象的形态动画实现。
76.虚拟形象的形态动画是指将虚拟形象的形态进行动态呈现的动画内容。虚拟形象的第一形态动画是指虚拟形象在社交界面中默认播放的形态动画。具体是虚拟形象在社交界面中当前动态呈现的内容,例如该第一形态动画可以是呼吸状态、打哈欠、转圈等动作的动画。示例性地,请参见图3a,图3a是本技术实施例提供的一种虚拟形象的第一形态动画的示意图。社交界面具体为动态页面,在动态页面3101中,动态页面顶部的虚拟形象3102呈现呼吸态动作,如图3a中展示的是虚拟形象的呼吸态动作在某一时刻的静态画面。
77.需要说明的是,虚拟形象的第一形态动画是在社交界面中没有交互操作时,也即社交界面处于无操作状态的情况下,在社交界面中进行播放的,在检测到交互操作之前,该第一形态动画可以被循环播放。通过在社交界面中动态地展示虚拟形象的形态,可以丰富社交界面的整体氛围。
78.社交界面设有至少一个分区,每个分区与虚拟形象的一种形态动画相匹配。社交界面中设置的分区是对社交界面中的交互操作可触发的分区,每个分区对应匹配虚拟形象的一种形态动画,各个分区所匹配的虚拟形象的形态动画可以是相同或者是不同的。另外,每个分区也可以和虚拟形象的多种(至少两种)形态动画匹配,例如分区1匹配虚拟形象的呼吸态动画和打哈欠动画,分区2匹配虚拟形象转圈动画和跳跃动画。通过社交界面中分区的设置,以及各个分区匹配的形态动画,可以对交互操作做出相应的虚拟形象的形态动画的反馈,从而使得虚拟形象的展示更加丰富生动。
79.在一个实施例中,在执行步骤s201之前,还可以:响应于针对社交界面的启动操作,获取虚拟形象的启动动画;显示社交界面,并在社交界面中播放启动动画。
80.对于社交界面的启动操作可以是打开社交客户端,或者是打开社交客户端在当前显示的服务界面中的发起针对社交界面的启动操作。前一种启动操作下可以直接显示社交界面,即在进入社交客户端呈现的界面即显示社交界面;后一种启动操作则是在进入社交客户端之后再发起启动操作后打开社交界面。可选地,社交客户端处于登录状态。虚拟形象的启动动画是指显示社交界面的第一时间虚拟形象的呈现动画。通过在社交界面中播放虚拟形象的启动动画,可以使得虚拟形象初始展示在社交界面中的方式有趣且生动。示例性地,请参见图3b,图3b是本技术实施例提供的一种虚拟形象初始呈现的示意图。社交界面具体为动态页面,在动态页面3201打开之后,虚拟形象随着动态页面打开的第一时间,从动态页面的后方爬上至动态页面的上侧,最终可以呈现类似于如图3a所示的虚拟形象。整个过程虚拟形象在动态页面中的展示内容是不断变化的,直到虚拟形象的启动动画呈现完毕。需要说明的是,当虚拟形象的启动动画播放完毕之后,若社交界面中没有交互操作,那么可
以紧接着在社交界面中播放虚拟形象的第一形态动画,通过持续动态地展示虚拟形象,虚拟形象的神态动作、表情等也是灵活变化的,从而使得虚拟形象的展示生动不呆板。
81.s202,当社交界面中存在交互操作时,确定交互操作所触发的目标分区。
82.在一个实施例中,社交界面沿预设方向依次设置至少一个分区,每个分区对应预设方向上的一个区域范围。其中,预设方向可以是指社交界面的水平方向、垂直方向或者是其他角度(例如45度)方向。可以在社交界面中的部分区域沿预设方向依次设置至少一个分区,可以在社交界面中的全部区域(对应于整个显示屏幕)或者是部分区域沿预设方向设置至少一个分区。至少一个分区的形状可以是矩形分区、正方形分区、圆形分区或者其他形状的分区,在此不做限制。在社交界面中设置的每个分区都存在一个区域范围,且是沿着预设方向的,该区域范围相对于社交界面来说可以是高度、宽度或者是半径等等,具体可以根据分区的形状进行设定。
83.示例性地,请参见图3c,图3c是本技术实施例提供的一种社交界面的分区设置的示意图。如图3c所示,社交界面中包括沿着垂直方向设置的3个分区,每个分区沿着水平方向的区域范围是相同的,而沿着垂直方向各个分区的区域范围不同。各个分区在垂直方向上的区域范围通过像素长度来划分:分区1的像素长度为10px,分区2的像素长度为170px,分区3的像素长度为150px。像素长度越大,分区的区域范围也越大。
84.社交对象可以在社交界面中发起交互操作,若计算机设备检测到该交互操作,则确定社交界面中存在交互操作。其中,交互操作是指与社交界面产生互动的操作,社交界面可以对该交互操作进行响应或者是不响应,从而呈现不同的内容。交互操作具体可以是手势交互操作,例如滑动操作(包括横向滑动、竖向滑动(例如下拉或者上滑)、拖动等)、多指(例如双指)捏合/展开/拖动/按压/敲击等等。对于交互操作的类型在此不做限定。通过交互操作可以实现智能化的人机交互,具体地,基于交互操作所触发的目标分区可以打造虚拟形象对应的动画反馈,从而带来更强烈的互动体验,针对交互操作触发不同分区所执行的响应操作,具体可参见步骤s203的介绍,在此先不做详述。
85.当社交界面中存在交互操作时,可以确定交互操作触发的目标分区。目标分区为社交界面中的任一个分区,在社交界面沿预设方向依次设置至少一个分区时,目标分区具体是交互操作所触发的沿预设方向的至少一个分区中的任一个分区。在一个实施例中,在社交界面沿预设方向依次设置至少一个分区,每个分区对应预设方向上的一个区域范围的条件下,步骤s202的具体实现方式可以包括以下步骤s2021和s2022。
86.s2021:当社交界面存在交互操作时,获取交互操作在预设方向上的操作信息。
87.交互操作可以是在社交界面中发起的手势操作,而社交界面沿着预设方向依次设置有至少一个分区,基于交互操作对社交界面的操作可以触发预设方向上的其中一个分区,具体可以通过交互操作产生的操作信息来确定。在此,可以首先获取交互操作在预设方向上的操作信息,交互操作在预设方向上的操作信息可用于描述交互操作在预设方向上的操作状态和操作结果。例如交互操作为下拉操作,预设方向为垂直方向,操作信息可以是该下拉操作在垂直方向下拉的幅度,又例如,交互操作为横向滑动操作,操作信息可以是在预设方向的操作结束位置。通过操作信息可以确定交互操作所触发的目标分区,具体可以参见下述步骤s2022。
88.s2022:基于操作信息与每个分区在预设方向上的区域范围之间的关系,确定交互
操作所触发的目标分区。
89.由于操作信息是预设方向上的,操作信息和各个分区的区域范围均是基于相同的维度(即预设方向)所得到的数据信息。因此,交互操作在预设方向上的操作信息是和每个分区在预设方向上的区域范围存在一定关系的,例如,操作信息为预设方向上的操作结束位置,而该操作结束位置可能是位于a分区在预设方向上的区域范围之内,由此可以确定该交互操作触发的目标分区为a分区。针对操作信息与各个分区的区域范围之间的关系,可确定交互操作触发的目标分区。
90.在一种实现方式中,操作信息包括操作起始点和操作结束点。操作起始点是指交互操作在社交界面中开始操作的位置,例如从社交界面的中间开始滑动,滑动起始位置即该操作起始点。操作结束点是交互操作在社交界面中结束操作的位置,例如交互操作为拖动操作,当向下拖动一段距离之后,停止拖动并松手,此时松手的位置即拖动操作的操作结束点。
91.步骤s2022的具体实现方式可以是:将操作结束点所属区域范围对应的分区,确定为交互操作所触发的目标分区;或者,根据操作起始点和操作结束点确定交互操作的操作幅度,将操作幅度所属区域范围对应的分区,确定为交互操作所触发的目标分区。由于交互操作与社交界面中的分区的各个区域范围之间的关系,可以基于操作结束点确定交互操作所触发的目标分区,或者是操作起始点和操作结束点共同确定交互操作所触发的目标分区。即:
92.1)交互操作可能在社交界面的某个位置停止,而该位置可能为某个分区的区域范围,也即交互操作的操作结束点落在某个分区的区域范围内,那么该区域范围对应分区可以确定为交互操作所触发的目标分区。
93.2)交互操作是一个在社交界面中的持续性操作,因此可以基于操作起始点和操作结束点确定该交互操作的操作幅度,该操作幅度可以是操作本身在屏幕中移动的距离,或者是对社交界面中可移动对象的移动的距离。该可移动对象可以是整个社交界面或者是社交界面中的部分界面。例如,交互操作为下拉操作,从显示社交界面的屏幕中的位置a(操作起始点)开始向下拖动,手指和屏幕保持触摸的状态,当移动到屏幕中的位置b(操作结束点)松手,位置a和位置b所拖动的长度可以视为交互操作的操作幅度。由于在下拉操作下,社交界面也可以跟随着下拉操作向下移动,那么社交界面移动的起始位置和移动的结束位置之间的距离也可以作为操作幅度。需要说明的是,此种情况下,该交互操作拖动社交界面向下移动的幅度y可以小于或者等于拖动操作的实际操作幅度x,x、y为正数。
94.进一步地,可以将操作幅度和区域范围放在同一个维度进行统计,从而依据操作幅度的大小落在哪个分区的区域范围内来确定交互操作所触发的目标分区。例如操作幅度为10,社交界面中沿着预设方向依次设置的3分区的区域范围的标度分别为0-5(分区1)、5-15(分区2)、15-20(分区3),此时,操作幅度的大小位于分区2的区域范围之间,因此可以将该分区2确定为交互操作所触发的目标分区。
95.s203,在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
96.由于社交界面中设置的各个分区对应匹配有虚拟形象的一种形态动画,因此在确定出交互操作所触发的目标分区之后,可以在社交界面中播放与该目标分区相匹配的虚拟形象的第二形态动画,该第二形态动画可以是与第一形态动画相同的形态动画,也可以是
与第一形态动画不同的形态动画。当第二形态动画与第一形态相同时,可以视为社交界面中的交互操作没有被响应,即没有对该交互操作反馈不同的形态动画,当第二形态动画与第一形态不同时,社交界面中原本播放的虚拟形象的第一形态动画变更为播放虚拟形象的第二形态动画,可以视为社交界面中的交互操作被响应,此时社交界面中根据交互操作反馈了新的形态动画,从而加强基于虚拟形象的社交互动体验。
97.在一个实施例中,还可以:当虚拟形象从一种形态动画切换为另一种形态动画进行播放时,在切换过程中播放过渡动画。也就是说,虚拟形象在两种不同的形态动画之间进行切换时,可以在切换过程中播放虚拟形象的过渡动画,进而使得两个形态动画之间的衔接更加流畅。例如在本实施例中,虚拟形象的第一形态动画和第二形态动画不同时,则可以在社交界面播放虚拟形象的第二形态动画之前,先播放虚拟形象的过渡动画,在虚拟形象的过渡动画播放结束之后,再播放虚拟形象的第二形态动画,或者是在虚拟形象的第二形态动画未获取到之前,循环播放虚拟形象的过渡动画,在获取到虚拟形象的第二形态动画之后,停止过渡动画的播放,然后播放与目标分区相匹配的虚拟形象的第二形态动画。需要说明的是,除了与目标分区相匹配的虚拟形象的第二形态动画可以作为对应交互操作的反馈动画,虚拟形象的过渡动画也可以作为对应交互操作的反馈动画。
98.示例性地,请参见图3d,图3d是本技术实施例提供的一种虚拟形象的过渡动画的示意图。社交界面具体为动态页面,交互操作为下拉操作,在对动态页面进行刷新轻度下拉时,动态页面3401预载刷新状态,同时,虚拟形象3402的动画对应呈现该下拉操作反馈的过渡动画,具体为虚拟形象的下滑动作,此处为虚拟形象向下看的动作。
99.综上,本技术实施例提供的虚拟形象的处理方案,社交界面中可播放虚拟形象的第一形态动画,当社交界面中存在交互操作时,可以确定交互操作触发的目标分区,具体可以是基于交互操作在预设方向上的操作信息,例如操作结束点或者是操作幅度来确定目标分区,之后,可以在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。可见,基于交互操作所触发的目标分区,可以在社交界面中反馈虚拟形象相应的形态动画,并且虚拟形象可跟随交互操作进行不同的形态变化,虚拟形象的展示是动态变化的,这样使得虚拟形象的展示更加丰富多变,且虚拟形象通过仿真现实世界中人的动作,使得虚拟形象的展示不再刻板而是生动的,可以为社交对象提供更强烈的互动体验。
100.请参见图4,图4是本技术一个示例性实施例提供的一种虚拟形象的处理方法的流程示意图二。该虚拟形象的处理方法可以由计算机设备(如图1b中的终端设备101)来执行,计算机设备中运行有社交客户端,虚拟形象应用于该客户端,该虚拟形象的处理方法包括但不限于以下步骤。
101.s401,在社交界面中播放虚拟形象的第一形态动画。
102.s402,当社交界面中存在交互操作时,确定交互操作所触发的目标分区。
103.上述步骤s401和s402的具体实现内容可以参见图2对应实施例中步骤s201和s202对应内容的介绍,在此不做赘述。
104.在一个实施例中,分区分为无响应分区和响应分区。也即社交界面中设置的分区可以划分为无响应分区和响应分区,社交界面中包括至少两个分区。当交互操作所触发的目标分区确定之后,可以判断该目标分区是属于无响应分区还是有响应分区,进而执行不同的操作。若目标分区属于无响应分区,则不对社交界面执行响应操作,同时维持社交界面
中的现有内容,包括:在社交界面中播放的与目标分区相匹配的虚拟形象的第二形态动画,该第二形态动画和第一形态动画相同。反之,则可针对社交界面执行相关的响应操作,具体参见步骤s403。
105.s403,若目标分区属于响应分区,则基于交互操作对社交界面执行响应操作。
106.在目标分区属于响应分区的条件下,可基于交互操作对社交界面执行响应操作,执行的响应操作可以包括:在社交界面中播放虚拟形象的第二形态动画,该第二形态动画与第一形态动画不同,且第二形态动画与交互操作触发的目标分区相匹配。此外,基于交互操作本身对应的功能,例如下拉刷新、滑动更新等,也可以对社交界面中的内容进行响应。
107.在一个实施例中,响应分区包括刷新分区和全屏分区,刷新分区和全屏分区是社交界面中设置的不同功能分区,交互操作触发的目标分区属于该响应分区包括的不同功能分区时,可以执行不同的响应操作,即:若目标分区为刷新分区,则刷新社交界面;或者,若目标分区为全屏分区,则切换社交界面。
108.交互操作可以是刷新操作,刷新操作满足刷新条件时(即触发刷新分区),可以实现对社交界面的刷新,具体地,通过刷新可以将最新的社交内容更新到该社交界面中。刷新操作例如是下拉刷新,或者是点击刷新按钮后社交页面自动刷新。可选地,在社交界面刷新的过程中,社交界面中可以循环播放虚拟形象的第二形态动画,此处第二形态动画是指虚拟形象的刷新动画。
109.若交互操作触发的目标分区为全屏分区,则可以将社交界面进行切换。可选地,切换后的社交界面是虚拟形象的编辑界面。虚拟形象的编辑界面是指支持对虚拟形象进行个性化编辑的界面。在虚拟形象的编辑界面所支持的个性化编辑包括但不限于:对虚拟形象的装扮进行更换,对虚拟形象重新捏脸,更换虚拟形象的道具等等。
110.基于以上内容,还可以:响应于编辑界面中对虚拟形象进行个性化编辑的编辑指令,更新虚拟形象。该编辑指令是针对虚拟形象进行个性化编辑的指令,例如更换装扮的指令、更换道具的指令、保存虚拟形象的指令等等,通过编辑指令可预览或者是保存虚拟形象的编辑效果,进而更新虚拟形象。可选地,在编辑界面中更新的虚拟形象还可以将其更新显示在其他界面,例如动态页面。需要说明的是,交互操作也可以是点击虚拟形象的操作,通过点击虚拟形象触发切换社交界面,且切换后的社交界面为虚拟形象的编辑界面。例如通过点击虚拟形象可以从动态页面切换至虚拟形象的换装页面。
111.示例性地,请参见图5a,图5a是本技术实施例提供的一种切换后的社交界面的示意图,社交界面在此是指动态页面,交互操作为下拉操作,虚拟形象的编辑界面是指换装页面。当社交对象在如图3a所示的动态页面中执行下拉操作,基于该下拉操作重下拉动态页面(即将动态页面下拉到一定幅度),确定下拉操作触发了全屏分区,进而展示如图5a中示的虚拟形象的换装页面5101,在该换装页面5101中还可以点击换装按钮5102进行一键换装。
112.进一步地,在交互操作触发的目标分区为响应分区中包括的不同功能分区时,还可以包括:若目标分区为刷新分区,则当社交界面刷新完毕后,在刷新后的社交界面中重新播放虚拟形象的第一形态动画;或者,若目标分区为全屏分区,则当社交界面切换完成后,在切换后的社交界面中重新播放虚拟形象的第一形态动画。
113.一种情况下:若交互操作触发的目标分区为刷新分区,社交界面会进行刷新,社交
界面中展示的内容可以发生变更,此时的界面可以称为刷新后的社交界面。在社交界面刷新完毕之后,刷新后的社交界面中可以重新播放虚拟形象的第一形态动画。也就是说社交界面刷新结束后,可以返回默认无操作的状态,即停止播放虚拟形象的第二形态动画,而播放虚拟形象的第一形态动画,该第一形态动画例如是呼吸态动作或者是打哈欠动作的动画。之后,当再次检测到社交界面中存在交互操作时,可以进入新的一轮对交互操作触发的目标分区的判断,具体可按照步骤s202~204所介绍的内容实现。
114.另一种情况下:若交互操作触发的目标分区为全屏分区时,可以切换社交界面,在社交界面切换完成之后,可在切换后的社交界面中重新播放虚拟形象的第一形态动画,此时虚拟形象的第一形态动画可以是指虚拟形象在虚拟形象的编辑界面的形态动画,例如进入编辑界面时的一系列动作变化的动画。需要说明的是,在切换社交界面之前,还可以循环播放全屏分区对应的虚拟形象的第二形态动画,该第二形态动画可以是刷新分区播放的虚拟形象的刷新动画。并且,交互操作之前,播放虚拟形象的第一形态动画的社交界面可以虚拟形象的编辑界面。
115.基于上述介绍的内容,下面对社交界面中设置的分区的管理状况进行如下说明。在此假设:交互操作为下拉操作,社交界面中设置的分区包括无响应分区和响应分区(包括刷新分区以及全屏分区),与响应分区相匹配的虚拟形象的形态动画为刷新动作,可以属于虚拟形象的第二形态动画,无操作状态(即交互操作不存在社交界面所处的状态)下的虚拟形象的形态动画包括呼吸态动作和打哈欠动作,可以属于虚拟形象的第一形态动画,过渡动画可以包括上滑动作和下滑动作。对于各个动作的划分可以参见下表。
116.表1动作划分
[0117][0118]
需要说明的是,上述动作划分是为了便于说明而列举的示例性内容,并不能构成对于虚拟形象的各种形态动画以及过渡动画的限制,即虚拟形象的各种形态动画以及过渡动画也可以设置为其他动作,在此不做限制。
[0119]
请参见图5b,图5b是本技术实施例提供的一种分区管理的示意图。如图5b所示,对于社交界面中设置的各个分区的管理具体可以包括如下内容。
[0120]
1)拉到无响应分区,无变化。若下拉操作拉到无响应分区时,社交界面以及虚拟形象不需要响应下拉操作,即虚拟形象仍旧循环播放呼吸态动作和打哈欠动作,社交界面中的内容可以不变。
[0121]
2)拉到刷新分区,在此区域播放刷新动作,如果松开手,则触发当前页面(即社交界面)刷新。在从无响应分区进入刷新分区的过程中,可播放下滑动作;当下拉操作拉到刷
新分区且未松手时,可以循环播放刷新动作;当松开手,可以刷新社交界面,可选地,在刷新的过程中可以循环播放刷新动作;当社交界面刷新完毕,社交界面从刷新区返回无响应区的过程中,可播放上滑动作。
[0122]
3)拉到全屏分区,在此区域播放刷新动作,如果松开手,则触发进入换装页。可选地,从无响应分区进入全屏分区,也可以播放过渡动画,例如下滑动作。在下拉操作拉到全屏分区且未松手之前,可以循环播放刷新动作,当松手时,可以切换社交界面,例如当前显示的社交界面为动态页面,则切换之后可以显示虚拟形象的换装页面。
[0123]
需要说明的是,在下拉操作下拉动到某个分区具体可以是指将社交界面拉动到该分区,或者是指下拉操作中操作点移动到该分区;当下拉操作拉到某个分区所在的区域或者是在某个分区松手,均可以视为该分区被触发。此外,当社交界面处于无操作的状态下,可以循环播放呼吸态动作和打哈欠动作。对于如图5b中示出无操作分区可以是社交界面中显示虚拟形象的专用分区,但并不作为交互操作可触发的分区,无操作分区展示的虚拟形象的形态动画,可作为无响应区显示虚拟形象的形态动画的参考。可选地,该无操作分区在社交界面中也可以是不存在的,例如虚拟形象以挂件形式存在于社交界面中,只要社交界面中不存在交互操作,那么社交界面就是处于无操作的状态,从而能够循环播放虚拟形象的第一形态动画。
[0124]
综上,本技术实施例提供的虚拟形象的处理方案通过为社交界面划分无响应分区和响应分区,进而在交互操作所触发的目标分区为响应分区时,可以对社交界面执行相关的响应操作,包括:刷新社交界面或者切换社交界面,并且在执行相关的响应操作的过程中,或者是响应操作执行完毕之后,虚拟形象的形态动画也可以跟随社交界面的不同状态进行变化,例如刷新完毕后社交界面进入无操作状态,刷新交互伴随着虚拟形象的形态动画的不同反馈,使得交互更加生动有趣。此外,基于交互操作可以直接切换社交界面,切换后的社交界面为基于虚拟形象的编辑界面时,通过交互操作可以快捷地进入虚拟形象的编辑界面,且虚拟形象的不同形态,这样能够更加方便社交对象对个人虚拟形象的个性化编辑,提高社交对象对虚拟形象的编辑兴趣。
[0125]
请参见图6,图6是本技术一个示例性实施例提供的一种虚拟形象的处理方法的流程示意图三。该虚拟形象的处理方法可以由计算机设备(如图1b中的终端设备101)来执行,计算机设备中运行有社交客户端,虚拟形象应用于该客户端,该虚拟形象的处理方法包括但不限于以下步骤。
[0126]
s601,检测缓存中是否存在虚拟形象的第一形态动画的动画文件。
[0127]
虚拟形象的第一形态动画的动画文件是用于虚拟形象的形态动态展示的形象动画的具体内容。该动画文件可以是动态序列帧(或者称为序列帧动画),也可以是动图(即动态图片)形式,例如sharpp图片格式(一种支持有损压缩和无损压缩的图片文件格式)、gif(graphics interchange format,图形交换格式)图片格式。在此不做限制。该动画文件可以是调用虚幻引擎中的离屏录制模块进行离屏录制得到的,此处的虚幻引擎可以是指ue4,虚幻引擎可以搭载在社交客户端中,当社交客户端中存在应用需求时,可调用虚幻引擎进行处理。
[0128]
可选地,可以响应于社交界面的显示,执行步骤s601。也就是说,当社交界面显示时,可以触发检测缓存中是否存在虚拟形象的第一形态动画的动画文件。具体地,可以通过
请求应用服务器对动画文件的存储记录,进而确定缓存中是否存在虚拟形象的第一形态动画的动画文件。
[0129]
s602,若不存在,则调用虚幻引擎处理得到虚拟形象的第一形态动画的动画文件。
[0130]
若检测到缓存中不存在虚拟形象的第一形态动画的动画文件,则可以调用虚幻引擎进行上屏渲染,得到虚拟形象的第一形态动画的动画文件,该动画文件可以在社交界面中实时地播放以呈现虚拟形象的第一形态动画。与此同时,还可以调用虚幻引擎进行离屏录制,得到第一形态动画的动画文件并将该动画文件进行缓存以方便后续使用时直接获取,从而避免虚幻引擎重复地启动,节省计算资源。
[0131]
针对缓存中不存在虚拟形象的第一形态动画的动画文件的场景,示例性地,可以是:当社交对象在虚拟形象的编辑界面中更新虚拟形象之后(例如更换虚拟形象的装扮),从该编辑界面返回动态页面的场景。由于虚拟形象是最新的虚拟形象,还没有在动态页面中的录制资源,即没有第一形态动画的动画文件。此时可以同步启动实时渲染和离屏录制,在动态页面实时渲染虚拟形象,同时离屏录制以得到动画文件并缓存,便于后续需要使用时快速高效地获取。
[0132]
如图7a所示的业务流程划分的示意图。在虚拟形象更换装扮之后,可以启动实时渲染和离屏录制,并且离屏录制得到的序列帧(包括有关虚拟形象的动画文件),可以上传到缓存服务器中进行缓存。下面对上屏渲染和离屏录制进行介绍。
[0133]
在一个实施例中,调用虚幻引擎处理得到虚拟形象的第一形态动画的动画文件,包括:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景对虚拟形象的第一形态动画的呈现画面进行上屏渲染,得到虚拟形象的第一形态动画的动画文件。
[0134]
此处具体是调用虚幻引擎中的上屏实时渲染模块对虚拟形象的第一形态动画的呈现画面进行上屏渲染。具体地,当接收到上屏渲染指令时,可以启动虚幻引擎。其中,上屏渲染指令例如是虚拟形象更新后进入动态页面产生的。虚幻引擎启动之后,首先基于虚幻引擎可以进行一些准备工作,依次包括:

创建textureview(承载显示数据流的view);

创建surface(材质),把textureview作为参数传入surface;

把surface传给ue4引擎初始化窗口;

进入场景;

空场景初始化。
[0135]
接着,可以获取虚拟形象的第一形态动画的动画参数,该动画参数可以包括场景参数和资源参数,资源参数例如是装扮资源参数、动作资源参数,场景参数用于指示虚拟形象所处的场景。资源参数可以通过虚拟形象的配置文件指示,配置文件包括蓝图、动作资源等。其中,配置文件可以从应用服务器中获取。之后,将动画参数传递给虚幻引擎,虚幻引擎可基于该动画参数下载和加载资源和场景。基于加载的资源和场景可以在相应场景下创建虚拟形象,具体步骤包括:

虚幻引擎基于加载的资源创建人物(spawnactor),具体可以是创建(spawn)一个基于蓝图的actor;

创建玩家实体(entity),从而获取角色(即虚拟形象)的控制权;

添加组件(component),包括但不限于:摄像机组件、玩家组件、动作组件、装扮组件,这些组件可以是和加载的场景和资源相关的,且各个组件可用于虚拟形象以及所在的场景的设置,例如基于摄像机组件可以设置玩家视角,基于动作组件可以设置虚拟形象的动作;

初始化系统(system),初始化的系统包括但不限于:形象系统、动作系统、装扮系统,同理,系统的初始化也可以基于加载的场景和资源实现,即加载的资源和场景指示
虚拟形象需要何种装扮、何种动作以及所处的场景;

将虚拟形象的装扮服装数据和捏脸数据设置到装扮组件。其中,虚拟形象的装扮服装数据和捏脸数据可以是动画参数包括的数据,这些数据可以是根据社交对象标识(例如id)获取到。对于上述内容的总结,具体可请参见图7b,图7b是本技术实施例提供的一种实时渲染虚拟形象的流程示意图。包括实时渲染的主流程和创建虚拟形象的子流程。在主流程中,还包括播放动作,设置动作资源。此步骤中可以根据动作标识获取动作资源,此处获取的动作资源可以是第一形态动画的动画文件,后续可以将该动作资源设置给虚拟形象播放,也即基于该动画文件播放虚拟形象的第一形态动画。
[0136]
根据上述内容,可以实现对虚拟形象的第一形态动画的上屏渲染。需要说明的是,上屏渲染是实时渲染并呈现到社交界面中的过程,对于虚拟形象的第一动画文件可以是实时地播放。例如动画文件中录制得到一帧就将该帧呈现到社交界面中。由于上屏渲染是实时渲染并呈现的过程,上屏渲染过程中得到的动画文件可以不保存。另外,由于社交界面还可能存在交互操作,虚拟形象对于交互操作进行反馈的第二形态动画与第一形态动画不同时,也可以按照上述过程进行上屏渲染,得到虚拟形象的第二形态动画的动画文件,进而基于该第二形态动画的动画文件在社交界面中播放虚拟形象的第二形态动画,对于具体的过程可参照得到第一形态动画的动画文件的过程,为求简洁,在此不做详述。
[0137]
在另一个实施例中,调用虚幻引擎处理得到虚拟形象的第一形态动画的动画文件,包括:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景设置虚拟录制位置;调用虚幻引擎基于加载的资源和场景,以及基于虚拟录制位置对虚拟形象的第一形态动画的呈现画面进行离屏录制,得到虚拟形象的第一形态动画的动画文件。
[0138]
对于第一形态动画的呈现画面进行离屏录制具体是调用虚幻引擎中的离屏录制模块实现。可选地,可以由离屏录制模块基于接收到的动画参数加载资源和场景,根据加载的资源和场景设置对虚拟形象进行录制的虚拟录制位置。该虚拟录制位置决定从哪个视角去录制虚拟形象的第一形态动画的呈现画面,该虚拟录制位置是指虚幻引擎中虚拟摄像机(virtual camera)位置。离屏录制的过程中,可以由虚幻引擎中的双线程同步及协同交互,对虚拟形象的第一形态动画的呈现画面进行离屏录制,得到虚拟形象的第一形态动画的动画文件。其中,双线程包括用于在离屏录制过程中对虚拟形象的呈现逻辑进行运算的第一线程,以及用于在离屏录制过程中对虚拟形象的呈现画面进行渲染的第二线程。通过两个线程配合工作可以高效地得到虚拟形象的第一形态动画的动画文件。
[0139]
需要说明的是,离屏录制模块除了录制虚拟形象的第一形态动画的动画文件之外,还可以录制虚拟形象的静态帧、虚拟形象的第二形态动画的动画文件以及两种形态动画之间进行切换所需的过渡动画。
[0140]
对于离屏录制各端的交互流程可以参见如图7c所示的示例性内容。如图7c所示,该交互流程中以社交界面为动态页面,虚拟形象的更新通过装扮模块实现为例,揭示了离屏录制的两种触发场景:一种是社交对象在装扮模块,例如虚拟形象的编辑界面中点击触发虚拟形象的装扮保存,由装扮模块主动触发离屏录制模块录制带个性化装扮的虚拟形象的静态帧,另一种是在装扮保存之后进入动态页面,由动态页面主动触发离屏录制模块进行离屏录制。具体交互流程包括如下内容。
[0141]
s7301:社交对象在装扮模块点击触发装扮保存。
[0142]
s7302:由装扮模块主动触发离屏录制模块录制带个性化装扮的虚拟形象的静态帧,并由离屏录制模块将该静态帧发送给动态页面。
[0143]
s7303:动态页面保存和显示该静态帧。这样可以避免动态序列帧录制期间社交对象看到空白。
[0144]
s7304:当社交对象进入动态页面,首先看到静态帧(如图3b中的启动动画中的第一帧)。
[0145]
s7305:动态页面主动触发离屏录制模块录制动画文件。该动画文件可以是动态序列帧,包括后续需要使用虚拟形象的各种形态动画的动画文件,例如第一形态动画的动画文件、第二形态动画的动画文件以及过渡动画等等。
[0146]
s7306:在动态页面中没有交互操作时,基于该动画文件在动态页面中播放虚拟形象的第一形态动画。第一形态动画可以是呼吸态序列帧动画。
[0147]
s7307:当社交对象交互操作触发动态页面刷新时,在动态页面播放进入态序列帧动画,该进入态序列帧动画是刷新前的过渡动画,播放完成之后,播放虚拟形象的第二形态动画。该第二形态动画可以是刷新态序列帧动画。在动态页面刷新过程中,可以拉取动态页面中最新的动态消息并显示在动态页面中。
[0148]
s7308:在动态页面刷新完毕时,播放进入第一形态动画之前的过渡动画,播放完成之后,可以恢复播放第一形态动画。需要说明的是,由于虚拟形象更新后首次进入动态页面,下拉刷新在社交界面中播放的虚拟形象的各个形态动画可以是实时渲染得到的,也可以是基于离屏录制得到的动画文件播放的。
[0149]
进一步地,对于离屏录制得到的动画文件,还可以:缓存离屏录制获得的虚拟形象的第一形态动画的动画文件。具体可以通过内容分发网络将离屏录制得到的第一形态动画的动画文件缓存至运行有社交客户端的终端设备附近的缓存服务器,例如cdn文件服务器,以加快访问速度,提高动画文件的获取效率。此外,可以调用社交客户端中搭载的上传模块将动画文件上传至缓存服务器,然后由缓存服务器保存动画文件并设置缓存地址,该缓存地址可以是动画文件下载链接,例如动画文件由cdn保存,对应生成的是cdn下载链接。之后,将该缓存地址下发给社交客户端,并由社交客户端将该缓存地址保存至应用服务器中。这样可以方便后续访问时,直接检测应用服务器中是否存在此类记录(即记录的缓存地址),进而在存在时可以根据对应的缓存地址快速获取动画文件。
[0150]
由于启动一次离屏录制不仅可以录制虚拟形象的第一形态动画的动画文件,还可以录制虚拟形象在社交界面中可能播放的所有形态动画的动画文件,例如过渡动画、第二形态动画的动画文件等。这些动画或者动画文件都可以缓存,因此,缓存中还包含通过离屏录制获得的虚拟形象的各种形态动画的动画文件,以及包含虚拟形象的各种形态动画之间切换时所需的过渡动画。具体地,缓存是指缓存服务器,这样缓存服务器中包括针对各种形态动画的动画文件、过渡动画,这些动画文件可以是与社交界面中设置的至少一个分区相匹配的形态动画的动画文件,包括第二形态动画的动画文件。若一次离屏录制的启动可以录制目标场景下(例如动态页面)所需的所有形态动画,则此种方式下能够避免重复启动虚幻引擎,从而有效节省录制资源。
[0151]
s603,若存在,则从缓存中读取虚拟形象的第一形态动画的动画文件。
[0152]
若缓存中存在虚拟形象的第一形态动画的动画文件,则可以直接从缓存中读取该动画文件,进而能够避免调用虚幻引擎进行不必要的录制。可选地,在以下场景中可以从缓存获取动画文件(如图7d所示的另一种业务流程划分):社交对象查看客态虚拟形象或者是二次进入同一社交界面(此时虚拟形象可以是未更新的),此时已经有离屏录制的资源,可以直接获取对应形态动画的动画文件播放,动画文件为动态序列帧,即下载动态序列帧播放。其中,客态虚拟形象是指最新的个人虚拟形象,可以由社交对象自己查看或者是被其他社交对象查看。
[0153]
在一个实施例中,应用服务器中存储有虚拟形象的n个动画文件的缓存地址,n为正整数,每个缓存地址绑定有虚拟形象的标识信息。该虚拟形象的n个动画文件均是与虚拟形象相关的动画文件包括虚拟形象的各种形态动画的动画文件以及过渡动画,虚拟形象的标识信息包括虚拟形象的装扮标识,由于虚拟形象的更新可以通过装扮的变化实现,而不同的虚拟形象所录制的效果是不同的,由此可以通过装扮标识来唯一表示当前虚拟形象,和相应的动画文件建立绑定关系。应用服务器中可以保存虚拟形象的缓存地址以及标识信息(包括装扮标识),从而能够在社交对象再次进入相同场景下,通过从应用服务器中查找记录的缓存地址,根据该缓存地址直接从缓存中获取对应的动画文件。
[0154]
在一种实现方式中,从缓存中读取虚拟形象的第一形态动画的动画文件,包括:获取虚拟形象的标识信息;从应用服务器中存储的n个缓存地址中查找与标识信息匹配的目标缓存地址;基于目标缓存地址从缓存中获取虚拟形象的第一形态动画的动画文件。
[0155]
虚拟形象的标识信息具体是指社交界面中显示的最新的虚拟形象的标识信息,标识信息可以包括装扮标识。通过该装扮标识可在应用服务器中记录的缓存地址中查找目标缓存地址,该目标缓存地址绑定的标识信息与获取到的虚拟形象的标识信息相同。此种方式下通过标识信息中的装扮标识从应用服务器中获取一个或多个与装扮标识相同的目标缓存地址。具体地,可调用社交客户端中搭载的下载模块,基于该目标缓存地址,例如cdn链接从缓存服务器中下载第一形态动画的动画文件,在得到该动画文件之后,可以直接使用,即基于虚拟形象的第一形态动画的动画文件,在社交界面中播放虚拟形象的第一形态动画。无需调用虚幻引擎进行二次录制。
[0156]
在另一种实现方式中,也可以请求获取应用服务器中记录的n个缓存地址,然后将虚拟形象的装扮标识与n个缓存地址绑定的装扮标识进行对比,将装扮标识相同的缓存地址确定为目标缓存地址,从而使用该目标缓存地址下载虚拟形象的第一形态动画的动画文件。这种方式下社交客户端是将n个缓存地址都拉取过来并通过装扮标识比对筛选出目标缓存地址。
[0157]
需要说明的是,当社交界面中存在交互操作时,依旧可以采用上述相同的方式从缓存中获取虚拟形象的第二形态动画的动画文件、过渡动画的动画文件等,或者是,可以一次性从缓存中获取虚拟形象在该社交界面中即将展示的所有形态动画的动画文件,将该动画文件缓存在本地,进而存在交互操作时快速响应并播放,对于具体的过程同上述介绍的内容,在此不做详述。
[0158]
示例性性地,请参见图7e,图7e是本技术实施例提供的一种动画文件上传以及下载的交互流程示意图。如图7e所示,以社交界面为动态页面,动画文件为动态序列帧,动态序列帧存储到cdn(即内容分发网络)为例进行说明。
[0159]
s7401:虚拟形象更新后(例如更换装扮),进入动态页面,动态页面触发离屏录制模块录制动态序列帧动画,动态页面基于离屏录制返回的动态帧序列生成动态序列帧(或称为动态序列帧动画)。
[0160]
s7402:动态页面调用上传模块,上传动态序列帧动画到cdn。
[0161]
s7403:cdn保存动态序列帧动画后,返回cdn下载链接。上传模块返回的上传结果即该cdn下载链接。
[0162]
s7404:动态页面把cdn下载链接和虚拟形象的装扮标识保存到后台的应用服务器。
[0163]
s7405:社交对象更新虚拟形象(例如更换装扮)之后,二次进入动态页面,请求后台序列帧记录,获得cdn链接和装扮标识。
[0164]
s7406:动态页面比对装扮标识后,调用下载模块,使用cdn链接下载序列帧。
[0165]
s7407:动态页面可以直接使用下载后得到的动态序列帧,无需二次录制。
[0166]
可见,将动态序列帧缓存到cdn中,通过cdn下载链接可以指示动画文件的存储地址,进而在有相同动画的使用需求时,可以直接调用下载模块基于该cdn下载链接得到动态序列帧,进而快速地触达虚拟形象的第一形态动画的动画文件,以便基于该动画文件在社交界面中播放虚拟形象的第一形态动画。
[0167]
s604,基于虚拟形象的第一形态动画的动画文件,在社交界面中播放虚拟形象的第一形态动画。
[0168]
在一个实施例中,当虚拟形象的第一形态动画的动画文件是调用虚幻引擎进行上屏渲染得到的时,该虚拟形象的第一形态动画的动画文件在形成的同时,就在社交界面中同步播放,从而实现在社交界面中播放虚拟形象的第一形态动画。具体地,可以基于动作标识(例如动作id,用于唯一标识一组动作资源)获取目标动作资源,然后将该目标动作资源设置给虚拟形象播放,这里的目标动作资源即是指上屏渲染得到的动画文件。
[0169]
在另一实施例中,虚拟形象的第一形态动画是基于从缓存中直接读取的动画文件在社交界面中播放。
[0170]
s605,当社交界面中存在交互操作时,确定交互操作所触发的目标分区。
[0171]
s606,在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
[0172]
步骤s605~606可以参考前述实施例中对应步骤介绍的内容,在此不做赘述。此外,需要说明的是,步骤s606还可以参考前述步骤中s601~s603中介绍在社交界面中播放虚拟形象的第一形态动画的内容,将其中的第一形态动画替换为第二形态动画,可以按照同样的步骤实现:在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
[0173]
本技术实施例提供的虚拟形象的处理方案,通过调用虚幻引擎对虚拟形象的各种形态动画进行上屏渲染,社交对象可以在社交界面中实时地看到个性化后的虚拟形象的效果;在上屏渲染的同时还可以离屏录制,由于虚拟形象不需要实时渲染,可以避免虚幻引擎常驻社交客户端导致的卡顿;另外,将虚拟形象的各种形态动画的动画文件进行缓存,可以避免动画文件的二次录制,减少虚幻引擎启动的频次,避免虚幻引擎频繁启动影响的社交客户端运行的流畅性。
[0174]
请参见图8,图8是本技术一个示例性实施例提供的一种虚拟形象的处理装置的结构示意图。上述虚拟形象的处理装置可以是运行于计算机设备中的一个计算机程序(包括
程序代码),例如该虚拟形象的处理装置为一个应用软件;该虚拟形象的处理装置可以用于执行本技术实施例提供的方法中的相应步骤。如图8所示,该虚拟形象的处理装置800可以包括:播放模块801、确定模块802。
[0175]
播放模块801,用于在社交界面中播放虚拟形象的第一形态动画,社交界面设有至少一个分区,每个分区与虚拟形象的至少一种形态动画相匹配;
[0176]
确定模块802,用于当社交界面中存在交互操作时,确定交互操作所触发的目标分区,目标分区为社交界面中的任一个分区;
[0177]
播放模块801,还用于在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
[0178]
在一个实施例中,社交界面沿预设方向依次设置至少一个分区,每个分区对应预设方向上的一个区域范围;确定模块802,具体用于:当社交界面存在交互操作时,获取交互操作在预设方向上的操作信息;基于操作信息与每个分区在预设方向上的区域范围之间的关系,确定交互操作所触发的目标分区。
[0179]
在一个实施例中,操作信息包括:操作起始点和操作结束点;确定模块802,具体用于:将操作结束点所属区域范围对应的分区,确定为交互操作所触发的目标分区;或者,根据操作起始点和操作结束点确定交互操作的操作幅度,将操作幅度所属区域范围对应的分区,确定为交互操作所触发的目标分区。
[0180]
在一个实施例中,分区分为无响应分区和响应分区;虚拟形象的处理装置800还包括执行模块803,用于:若目标分区属于响应分区,则基于交互操作对社交界面执行响应操作。
[0181]
在一个实施例中,响应分区包括刷新分区和全屏分区;执行模块803,具体用于:若目标分区为刷新分区,则刷新社交界面;或者,若目标分区为全屏分区,则切换社交界面。
[0182]
在一个实施例中,播放模块801,还用于:若目标分区为刷新分区,则当社交界面刷新完毕后,在刷新后的社交界面中重新播放虚拟形象的第一形态动画;或者,若目标分区为全屏分区,则当社交界面切换完成后,在切换后的社交界面中重新播放虚拟形象的第一形态动画。
[0183]
在一个实施例中,切换后的社交界面为虚拟形象的编辑界面,虚拟形象的处理装置800还包括更新模块804,用于:响应于编辑界面中对虚拟形象进行个性化编辑的编辑指令,更新虚拟形象。
[0184]
在一个实施例中,播放模块801,还用于:当虚拟形象从一种形态动画切换为另一种形态动画进行播放时,在切换过程中播放过渡动画。
[0185]
在一个实施例中,播放模块801,具体用于:检测缓存中是否存在虚拟形象的第一形态动画的动画文件;若存在,则从缓存中读取虚拟形象的第一形态动画的动画文件;若不存在,则调用虚幻引擎处理得到虚拟形象的第一形态动画的动画文件;基于虚拟形象的第一形态动画的动画文件,在社交界面中播放虚拟形象的第一形态动画。
[0186]
在一个实施例中,播放模块801,具体用于:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景进行上屏渲染,得到虚拟形象的第一形态动画的动画文件。
[0187]
在一个实施例中,播放模块801,具体用于:获取虚拟形象的第一形态动画的动画
参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景设置虚拟录制位置;调用虚幻引擎基于加载的资源和场景,以及基于虚拟录制位置对虚拟形象的第一形态动画的呈现画面进行离屏录制,得到虚拟形象的第一形态动画的动画文件。
[0188]
在一个实施例中,虚拟形象的处理装置800还包括缓存模块805,用于:缓存离屏录制获得的虚拟形象的第一形态动画的动画文件;其中,缓存中还包含通过离屏录制获得的虚拟形象的各种形态动画的动画文件,以及包含虚拟形象的各种形态动画之间切换时所需的过渡动画。
[0189]
在一个实施例中,应用服务器中存储有虚拟形象的n个动画文件的缓存地址,n为正整数,每个缓存地址绑定有虚拟形象的标识信息;播放模块801,还用于:获取虚拟形象的标识信息;从应用服务器中存储的n个缓存地址中查找与标识信息匹配的目标缓存地址;基于目标缓存地址从缓存中获取虚拟形象的第一形态动画的动画文件。
[0190]
可以理解的是,本技术实施例所描述的虚拟形象的处理装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
[0191]
请参见图9,图9是本技术实施例提供的一种计算机设备的结构示意图。该计算机设备900可以包含独立设备(例如服务器、节点、终端等等中的一个或者多个),也可以包含独立设备内部的部件(例如芯片、软件模块或者硬件模块等)。该计算机设备900可以包括至少一个处理器901和通信接口902,进一步可选地,计算机设备900还可以包括至少一个存储器903和总线904。其中,处理器901、通信接口902和存储器903通过总线904相连。
[0192]
其中,处理器901是进行算术运算和/或逻辑运算的模块,具体可以是中央处理器(central processing unit,cpu)、图片处理器(graphics processing unit,gpu)、微处理器(microprocessor unit,mpu)、专用集成电路(application specific integrated circuit,asic)、现场可编程逻辑门阵列(field programmable gate array,fpga)、复杂可编程逻辑器件(complex programmable logic device,cpld)、协处理器(协助中央处理器完成相应处理和应用)、微控制单元(microcontroller unit,mcu)等处理模块中的一种或者多种的组合。
[0193]
通信接口902可以用于为至少一个处理器提供信息输入或者输出。和/或,通信接口902可以用于接收外部发送的数据和/或向外部发送数据,可以为包括诸如以太网电缆等的有线链路接口,也可以是无线链路(wi-fi、蓝牙、通用无线传输、车载短距通信技术以及其他短距无线通信技术等)接口。本技术中通信接口也可称为网络接口。
[0194]
存储器903用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器903可以是随机存储记忆体(random access memory,ram)、只读存储器(read-only memory,rom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、或便携式只读存储器(compact disc read-only memory,cd-rom)等等中的一种或者多种的组合。
[0195]
该计算机设备900中的至少一个处理器901用于调用至少一个存储器903中存储的计算机程序,用于执行前述的虚拟形象的处理方法,例如前述图2、图4、图6所示实施例所描述的虚拟形象的处理方法。
[0196]
在一种可能的实施方式中,该计算机设备900中的处理器901用于调用至少一个存储器903中存储的计算机程序,用于执行以下操作:在社交界面中播放虚拟形象的第一形态动画,社交界面设有至少一个分区,每个分区与虚拟形象的至少一种形态动画相匹配;当社交界面中存在交互操作时,确定交互操作所触发的目标分区,目标分区为社交界面中的任一个分区;在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。
[0197]
在一个实施例中,社交界面沿预设方向依次设置至少一个分区,每个分区对应预设方向上的一个区域范围;处理器901具体用于:当社交界面存在交互操作时,获取交互操作在预设方向上的操作信息;基于操作信息与每个分区在预设方向上的区域范围之间的关系,确定交互操作所触发的目标分区。
[0198]
在一个实施例中,操作信息包括:操作起始点和操作结束点;处理器901具体用于:将操作结束点所属区域范围对应的分区,确定为交互操作所触发的目标分区;或者,根据操作起始点和操作结束点确定交互操作的操作幅度,将操作幅度所属区域范围对应的分区,确定为交互操作所触发的目标分区。
[0199]
在一个实施例中,分区分为无响应分区和响应分区;处理器901,用于:若目标分区属于响应分区,则基于交互操作对社交界面执行响应操作。
[0200]
在一个实施例中,响应分区包括刷新分区和全屏分区;处理器901,具体用于:若目标分区为刷新分区,则刷新社交界面;或者,若目标分区为全屏分区,则切换社交界面。
[0201]
在一个实施例中,处理器901,还用于:若目标分区为刷新分区,则当社交界面刷新完毕后,在刷新后的社交界面中重新播放虚拟形象的第一形态动画;或者,若目标分区为全屏分区,则当社交界面切换完成后,在切换后的社交界面中重新播放虚拟形象的第一形态动画。
[0202]
在一个实施例中,切换后的社交界面为虚拟形象的编辑界面,处理器901,用于:响应于编辑界面中对虚拟形象进行个性化编辑的编辑指令,更新虚拟形象。
[0203]
在一个实施例中,处理器901,还用于:当虚拟形象从一种形态动画切换为另一种形态动画进行播放时,在切换过程中播放过渡动画。
[0204]
在一个实施例中,处理器901,具体用于:检测缓存中是否存在虚拟形象的第一形态动画的动画文件;若存在,则从缓存中读取虚拟形象的第一形态动画的动画文件;若不存在,则调用虚幻引擎处理得到虚拟形象的第一形态动画的动画文件;基于虚拟形象的第一形态动画的动画文件,在社交界面中播放虚拟形象的第一形态动画。
[0205]
在一个实施例中,处理器901,具体用于:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景进行上屏渲染,得到虚拟形象的第一形态动画的动画文件。
[0206]
在一个实施例中,处理器901,具体用于:获取虚拟形象的第一形态动画的动画参数;将动画参数传递至虚幻引擎;调用虚幻引擎基于动画参数加载资源和场景,并基于加载的资源和场景设置虚拟录制位置;调用虚幻引擎基于加载的资源和场景,以及基于虚拟录制位置对虚拟形象的第一形态动画的呈现画面进行离屏录制,得到虚拟形象的第一形态动画的动画文件。
[0207]
在一个实施例中,处理器901,用于:缓存离屏录制获得的虚拟形象的第一形态动画的动画文件;其中,缓存中还包含通过离屏录制获得的虚拟形象的各种形态动画的动画
文件,以及包含虚拟形象的各种形态动画之间切换时所需的过渡动画。
[0208]
在一个实施例中,应用服务器中存储有虚拟形象的n个动画文件的缓存地址,n为正整数,每个缓存地址绑定有虚拟形象的标识信息;处理器901,还用于:获取虚拟形象的标识信息;从应用服务器中存储的n个缓存地址中查找与标识信息匹配的目标缓存地址;基于目标缓存地址从缓存中获取虚拟形象的第一形态动画的动画文件。
[0209]
应当理解,本技术实施例中所描述的计算机设备900可执行前文所对应实施例中对该虚拟形象的处理方法的描述,也可执行前文图8所对应实施例中对该虚拟形象的处理装置800的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
[0210]
此外,还应指出,本技术一个示例性实施例还提供了一种存储介质,该存储介质中存储了前述虚拟形象的处理方法的计算机程序,该计算机程序包括程序指令,当一个或多个处理器加载并执行该程序指令,可以实现实施例中对虚拟形象的处理方法的描述,这里不再赘述,对采用相同方法的有益效果描述,也在此不再赘述。可以理解的是,程序指令可以被部署在一个或能够互相通信的多个计算机设备上执行。
[0211]
上述计算机可读存储介质可以是前述任一实施例提供的虚拟形象的处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
[0212]
本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例中一方面提供的方法。
[0213]
本技术的一个方面,提供了另一种计算机程序产品,该计算机程序产品包括计算机程序或计算机指令,该计算机程序或计算机指令被处理器执行时实现本技术实施例提供的虚拟形象的处理方法的步骤。
[0214]
本技术实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
[0215]
本技术实施例装置中的模块可以根据实际需要进行合并、划分和删减。
[0216]
以上所揭露的仅为本发明的部分实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

技术特征:
1.一种虚拟形象的处理方法,其特征在于,包括:在社交界面中播放虚拟形象的第一形态动画,所述社交界面设有至少一个分区,每个分区与所述虚拟形象的至少一种形态动画相匹配;当所述社交界面中存在交互操作时,确定所述交互操作所触发的目标分区,所述目标分区为所述社交界面中的任一个分区;在所述社交界面中播放与所述目标分区相匹配的所述虚拟形象的第二形态动画。2.如权利要求1所述的方法,其特征在于,所述社交界面沿预设方向依次设置所述至少一个分区,每个分区对应所述预设方向上的一个区域范围;所述当所述社交界面中存在交互操作时,确定所述交互操作所触发的目标分区,包括:当所述社交界面存在交互操作时,获取所述交互操作在所述预设方向上的操作信息;基于所述操作信息与所述每个分区在所述预设方向上的区域范围之间的关系,确定所述交互操作所触发的目标分区。3.如权利要求2所述的方法,其特征在于,所述操作信息包括:操作起始点和操作结束点;所述基于所述操作信息与所述每个分区在所述预设方向上的区域范围之间的关系,确定所述交互操作所触发的目标分区,包括:将所述操作结束点所属区域范围对应的分区,确定为所述交互操作所触发的目标分区;或者,根据所述操作起始点和操作结束点确定所述交互操作的操作幅度,将所述操作幅度所属区域范围对应的分区,确定为所述交互操作所触发的目标分区。4.如权利要求1所述的方法,其特征在于,所述分区分为无响应分区和响应分区;所述方法还包括:若所述目标分区属于响应分区,则基于所述交互操作对所述社交界面执行响应操作。5.如权利要求4所述的方法,其特征在于,所述响应分区包括刷新分区和全屏分区;所述若所述目标分区属于响应分区,则基于所述交互操作对所述社交界面执行响应操作,包括:若所述目标分区为所述刷新分区,则刷新所述社交界面;或者,若所述目标分区为所述全屏分区,则切换所述社交界面。6.如权利要求5所述的方法,其特征在于,所述方法还包括:若所述目标分区为刷新分区,则当所述社交界面刷新完毕后,在刷新后的社交界面中重新播放所述虚拟形象的第一形态动画;或者,若所述目标分区为所述全屏分区,则当所述社交界面切换完成后,在切换后的社交界面中重新播放所述虚拟形象的第一形态动画。7.如权利要求6所述的方法,其特征在于,所述切换后的社交界面为虚拟形象的编辑界面,所述方法还包括:响应于所述编辑界面中对所述虚拟形象进行个性化编辑的编辑指令,更新所述虚拟形象。8.如权利要求1~7任一项所述的方法,其特征在于,所述方法还包括:当所述虚拟形象从一种形态动画切换为另一种形态动画进行播放时,在切换过程中播
放过渡动画。9.如权利要求1~7任一项所述的方法,其特征在于,所述在社交界面中播放虚拟形象的第一形态动画,包括:检测缓存中是否存在所述虚拟形象的第一形态动画的动画文件;若存在,则从缓存中读取所述虚拟形象的第一形态动画的动画文件;若不存在,则调用虚幻引擎处理得到所述虚拟形象的第一形态动画的动画文件;基于所述虚拟形象的第一形态动画的动画文件,在所述社交界面中播放所述虚拟形象的第一形态动画。10.如权利要求9所述的方法,其特征在于,所述调用虚幻引擎处理得到所述虚拟形象的第一形态动画的动画文件,包括:获取所述虚拟形象的第一形态动画的动画参数;将所述动画参数传递至所述虚幻引擎;调用所述虚幻引擎基于所述动画参数加载资源和场景,并基于加载的资源和场景进行上屏渲染,得到所述虚拟形象的第一形态动画的动画文件。11.如权利要求9所述的方法,其特征在于,所述调用虚幻引擎处理得到所述虚拟形象的第一形态动画的动画文件,包括:获取所述虚拟形象的第一形态动画的动画参数;将所述动画参数传递至所述虚幻引擎;调用所述虚幻引擎基于所述动画参数加载资源和场景,并基于加载的资源和场景设置虚拟录制位置;调用所述虚幻引擎基于加载的资源和场景,以及基于所述虚拟录制位置对所述虚拟形象的第一形态动画的呈现画面进行离屏录制,得到所述虚拟形象的第一形态动画的动画文件。12.如权利要求11所述的方法,其特征在于,所述方法还包括:缓存离屏录制获得的所述虚拟形象的第一形态动画的动画文件;其中,所述缓存中还包含通过离屏录制获得的所述虚拟形象的各种形态动画的动画文件,以及包含所述虚拟形象的各种形态动画之间切换时所需的过渡动画。13.如权利要求12所述的方法,其特征在于,应用服务器中存储有虚拟形象的n个动画文件的缓存地址,n为正整数,每个缓存地址绑定有虚拟形象的标识信息;所述从缓存中读取所述虚拟形象的第一形态动画的动画文件,包括:获取所述虚拟形象的标识信息;从所述应用服务器中存储的n个缓存地址中查找与所述标识信息匹配的目标缓存地址;基于所述目标缓存地址从所述缓存中获取所述虚拟形象的第一形态动画的动画文件。14.一种虚拟形象的处理装置,其特征在于,包括:播放模块,用于在社交界面中播放虚拟形象的第一形态动画,所述社交界面设有至少一个分区,每个分区与所述虚拟形象的至少一种形态动画相匹配;确定模块,用于当所述社交界面中存在交互操作时,确定所述交互操作所触发的目标分区,所述目标分区为所述社交界面中的任一个分区;
所述播放模块,还用于在所述社交界面中播放与所述目标分区相匹配的所述虚拟形象的第二形态动画。15.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;所述处理器与所述存储器、所述网络接口相连,其中,所述网络接口用于提供网络通信功能,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行权利要求1至13任一项所述的虚拟形象的处理方法。16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时,执行权利要求1至13任一项所述的虚拟形象的处理方法。17.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序当被处理器执行时,执行权利要求1至13任一项所述的虚拟形象的处理方法。

技术总结
本申请实施例公开了一种虚拟形象的处理方法及相关产品,该虚拟形象的处理方法包括:在社交界面中播放虚拟形象的第一形态动画,社交界面设有至少一个分区,每个分区与虚拟形象的至少一种形态动画相匹配;当社交界面中存在交互操作时,确定交互操作所触发的目标分区,目标分区为社交界面中的任一个分区;在社交界面中播放与目标分区相匹配的虚拟形象的第二形态动画。采用本申请实施例,可以基于交互操作在社交界面中打造独立的虚拟形象的形态动画反馈,从而使得虚拟形象的展示生动有趣,提高基于虚拟形象的社交产品的留存和粘性。高基于虚拟形象的社交产品的留存和粘性。高基于虚拟形象的社交产品的留存和粘性。


技术研发人员:程龙 翟安东 董浩华 罗劲 康柏林 刘庆祥
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2022.03.23
技术公布日:2023/10/6
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐