一种利用游戏引擎实现表情动画的方法及系统与流程

文档序号:14654145发布日期:2018-06-08 22:44阅读:385来源:国知局
一种利用游戏引擎实现表情动画的方法及系统与流程

本申请涉及人工智能技术领域,尤其是涉及一种利用游戏引擎实现表情动画的方法及系统。



背景技术:

逐帧动画是一种在连续的关键帧中分解动画动作,即在时间轴的每一帧上绘制不同内容并使之连续播放成动画的一种常见的动画形式。现有技术中,表情动画一般采用逐帧动画或者MP4动画的形式。逐帧动画或者MP4动画的缺点是无法对表情进行动态的控制,最初动画设计师事先编辑好动画,以后每次播放动画时,播放的都是相同的动画。利用现有技术不能解决动态控制表情动画问题。



技术实现要素:

本申请实施例提供一种利用游戏引擎实现表情动画的方法及系统。解决了动态控制表情动画问题。

本申请实施例提供了一种利用游戏引擎实现表情动画的方法,该方法包括:

应用程序监听到事件后向游戏引擎发出通知;

所述游戏引擎接收到所述通知后,调用playEmotion()函数;

所述playEmotion()函数驱动与所述事件对应的表情动画显示。

进一步,该方法还包括:

所述应用程序未监听到事件后向定时器发出通知;

所述定时器每隔一定时间向游戏引擎发出通知;

所述游戏引擎根据所述定时器发出的通知,调用playEmotion()函数;

所述playEmotion()函数驱动与应用程序未监听到事件对应的表情动画显示。

进一步,所述事件是外界对机器人做出的操作。

进一步,所述游戏引擎内嵌在应用程序中。

进一步,所述定时器内嵌在应用程序中。

进一步,该方法还包括:

所述应用程序烧录在存储卡上。

进一步,该方法还包括:

所述表情动画烧录在存储卡上。

本申请实施例还提供了一种利用游戏引擎实现表情动画的系统,该系统包括:该系统包括:存储器和处理器;

所述存储器上存储有应用程序;

在所述应用程序被执行时,所述处理器被配置成:

应用程序监听到事件后向游戏引擎发出通知;所述游戏引擎接收到所述通知后,调用playEmotion()函数;

所述playEmotion()函数驱动与所述事件对应的表情动画显示。

进一步,所述处理器还被配置成:

所述应用程序未监听到事件后向定时器发出通知;

所述定时器每隔一定时间向游戏引擎发出通知;

所述游戏引擎根据所述定时器发出的通知,调用playEmotion()函数;

所述playEmotion()函数驱动与应用程序未监听到事件对应的表情动画显示。

进一步,所述系统为机器人。

本申请实现了在不同的场景下随时播放不同表情动画的效果。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为计算机组成结构框图;

图2为本申请实施例提供的一种利用游戏引擎实现表情动画的方法的流程图;

图3为本申请实施例提供的一种利用游戏引擎实现表情动画的系统的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为计算机组成结构框图,其中示出了计算机的主要部件。图1中,处理器110、内部存储器105、总线桥120以及网络接口115接入系统总线140,总线桥120用于桥接系统总线140和I/O总线145,I/O接口接入I/O总线145, USB接口以及外部存储器与I/O接口连接。图1中,处理器110可以为一个或多个处理器,每个处理可以具有一个或者多个处理器内核;内部存储器105为易失性存储器,例如寄存器、缓存器、各种类型的随机存取存储器等;在计算机开机运行的时候,内部存储器105中的数据包括操作系统和应用程序;网络接口115可以为以太网接口、光纤接口等;系统总线140可以用来传送数据信息、地址信息、以及控制信息;总线桥120可以用来进行协议转换,将系统总线协议转换为I/O协议或者将I/O协议转换为系统总线协议以实现数据传输; I/O总线145用来数据信息和控制信息,还可以总线终结电阻或电路来降低信号反射干扰;I/O接口130主要与各种外部设备连接,例如键盘、鼠标、传感器等等,闪存可以通过USB接口接入I/O总线,外部存储器为非易失性存储器,例如硬盘、光盘等。在计算机开机之后,处理器可以将存储于外部存储其中的数据读取到内部存储器中,并对内部存储其中的计算机指令进行处理,完成操作系统以及应用程序的功能。该示例计算机可以为台式机、笔记本电脑、平板电脑、智能手机等。

图2为本申请实施例提供的一种利用游戏引擎实现表情动画的方法的流程图,该流程图包括:

步骤205,应用程序监听到事件后向游戏引擎发出通知;

在具体应用本申请实施例的过程中,以Luka绘本机器人为例,但不限于这一种机器人。Luka绘本机器人是一款利用AI技术来进行绘本阅读、播放故事等功能的机器人。用屏幕模拟Luka绘本机器人的眼睛。它可以通过眼部表情与用户进行交互,表达情感。眼部动画需要有很复杂的交互逻辑,需要能够通过Luka绘本机器人当前的场景、重力等来进行控制,眼部动画可以设计有多种展现形式。对Luka绘本机器人进行某一操作,如“抚摸头部”。Luka绘本机器人的眼部屏幕会显示和抚摸头部这一操作相对应的某一特定表情动画。烧录在存储卡上的应用程序监听到抚摸头部这一操作事件后向内嵌在应用程序中的游戏引擎发出通知。在本实施例中,存储卡位于机器人内的PCB电路板上。

步骤210,所述游戏引擎接收到所述通知后,调用playEmotion()函数;

在本实施例中,playEmotion()函数是研发人员写好的程序代码,内嵌在游戏引擎内。游戏引擎可以为unity引擎,但不限于这一种游戏引擎。

步骤215,所述playEmotion()函数驱动与所述事件对应的表情动画显示;

在具体应用本申请实施例的过程中,playEmotion()函数驱动与抚摸头部这一操作事件对应的表情动画显示。在本实施例中,表情动画烧录在存储卡上。Luka绘本机器人在不同的场景下,显示不同的特定眼部表情动画。例如,按下Luka绘本机器人的开关键时,眼部屏幕上显示一个“微笑”表情;将Luka 绘本机器人倒立时(由机身上的重力感应器检测出),眼部屏幕上显示一个“害怕”的表情,在触摸Luka绘本机器人肚子时,眼部屏幕上显示一个“挠痒痒”的表情,在触摸Luka绘本机器人头部时,眼部屏幕上显示一个“翻白眼”的表情;对Luka绘本机器人进行音量调节时,眼部屏幕上显示一个“兴奋”的表情。

在本实施例中,在应用程序未监听到事件的情况下,向定时器发出通知;定时器每隔一定时间向游戏引擎发出通知;游戏引擎根据定时器发出的通知,调用playEmotion()函数;playEmotion()函数驱动与应用程序未监听到事件对应的表情动画显示。

其中,定时器内嵌在应用程序中。在本实施例中,在应用程序未监听到事件的情况下,眼部屏幕上显示的表情动画与应用程序监听到事件时显示的特定表情动画不同。例如,眼部屏幕上显示一个“困倦”的表情。

本申请实施例还提供了一种利用游戏引擎实现表情动画的系统,需要说明的是,本申请实施例的利用游戏引擎实现表情动画的系统可以用于执行本申请实施例所提供的用于利用游戏引擎实现表情动画的方法。以下对本申请实施例提供的利用游戏引擎实现表情动画的系统进行介绍。

图3为本申请实施例提供的一种利用游戏引擎实现表情动画的系统的结构示意图,该结构示意图包括存储器305和处理器310;利用游戏引擎实现表情动画的系统为机器人。

存储器305,存储器上存储有应用程序;

处理器310,在应用程序被执行时,处理器被配置成应用程序监听到事件后向游戏引擎发出通知;游戏引擎接收到通知后,调用playEmotion()函数; playEmotion()函数驱动与事件对应的表情动画显示。

在具体应用本申请实施例的过程中,以Luka绘本机器人为例,但不限于这一种机器人。Luka绘本机器人是一款利用AI技术来进行绘本阅读、播放故事等功能的机器人。用屏幕模拟Luka绘本机器人的眼睛。它可以通过眼部表情与用户进行交互,表达情感。眼部动画需要有很复杂的交互逻辑,需要能够通过Luka绘本机器人当前的场景、重力等来进行控制,眼部动画可以设计有多种展现形式。对Luka绘本机器人进行某一操作,如“抚摸头部”。存储器上存储的应用程序被执行。应用程序监听到抚摸头部这一操作事件后向内嵌在应用程序中的游戏引擎发出通知。游戏引擎接收到通知后,调用playEmotion() 函数。playEmotion()函数驱动与抚摸头部这一操作事件对应的表情动画显示。Luka绘本机器人的眼部屏幕会显示和抚摸头部这一操作相对应的某一特定表情动画。在本实施例中,应用程序和表情动画烧录在存储卡上,存储卡位于机器人内的PCB电路板上。在本实施例中,playEmotion()函数是研发人员写好的程序代码,内嵌在游戏引擎内。游戏引擎可以为unity引擎,但不限于这一种游戏引擎。在本实施例中,Luka绘本机器人在不同的场景下,显示不同的特定眼部表情动画。例如,按下Luka绘本机器人的开关键时,眼部屏幕上显示一个“微笑”表情;将Luka绘本机器人倒立时(由机身上的重力感应器检测出),眼部屏幕上显示一个“害怕”的表情,在触摸Luka绘本机器人肚子时,眼部屏幕上显示一个“挠痒痒”的表情,在触摸Luka绘本机器人头部时,眼部屏幕上显示一个“翻白眼”的表情;对Luka绘本机器人进行音量调节时,眼部屏幕上显示一个“兴奋”的表情。

在具体实施本申请实施例中,在应用程序被执行时,处理器还被配置成应用程序未监听到事件,向定时器发出通知;定时器每隔一定时间向游戏引擎发出通知;游戏引擎根据定时器发出的通知,调用playEmotion()函数; playEmotion()函数驱动与应用程序未监听到事件对应的表情动画显示。其中,定时器内嵌在应用程序中。在本实施例中,在应用程序未监听到事件的情况下,眼部屏幕上显示的表情动画与应用程序监听到事件时显示的特定表情动画不同。例如,眼部屏幕上显示一个“困倦”的表情。

本申请实施例实现了在不同的场景下随时播放不同表情动画的效果。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1