掌桥专利:专业的专利平台
掌桥专利
首页

动画角色的改进

文献发布时间:2023-06-19 13:46:35


动画角色的改进

技术领域

本申请涉及计算机游戏,具体涉及用于修改和显示计算机游戏中的游戏角色的方法、系统和计算机可读介质。

背景技术

一些在线游戏平台允许用户相互连接、相互交互(例如,在游戏内)和/或通过互联网相互共享信息。在线游戏平台的用户可以参与多人游戏环境(例如,在虚拟二维或三维环境中),设计自定义游戏环境,设计角色和化身,装饰化身,与其他用户交换虚拟物品,使用音频、视频或文本消息等方式与其他用户交流。

考虑到上述需求以及其它因素等,提供了一些实现方式。

发明内容

本申请实施例提供了对游戏角色显示和改进。在一些实施例中,一种计算机实现的更新被显示角色的方法,包括:提供用户界面,该用户界面包括至少三个端点和包括被显示角色的预览区域。在至少一些实施例中,所述至少三个端点的每一个端点与对应类型的角色相关联并且输入区域由多个线条包围。在至少一些实施例中,所述多个线条中的每一个线条连接所述至少三个端点中的两个相邻端点。

在一些实施例中,所述方法包括:接收用户输入,该用户输入指示所述输入区域内的特定位置;响应于接收到所述用户输入,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸;以及根据所述被显示角色的一个或者多个身体部位的所述被确定的尺寸,更新所述预览区域内的所述被显示角色。在一些实施例中,所述输入区域被定义为三角形,所述三角形的每一个顶点对应所述至少三个端点的相应端点。

在一些实施例中,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸,包括:根据所述特定位置和所述至少三个端点之间的对应距离,选择所述一个或者多个身体部位的对应尺寸。在一些实施例中,确定所述尺寸,包括:确定所述一个或者多个身体部位的长度或者周长。

在一些实施例中,所述至少三个端点包括与人类女性角色相关联的第一端点,与人类男性角色相关联的第二端点,以及与小人仔角色相关联的第三端点。

在一些实施例中,更新所述被显示角色,包括:调整所述被显示角色的纹理。在一些实施例中,调整所述纹理包括调整亮度过渡或者颜色过渡中的至少一个。

在一些实施例中,所述被显示角色包括与所述一个或者多个身体部位相连接的具有15个关节的骨骼。

在一些实施例中,确定所述被显示角色的一个或者多个身体部位的尺寸,包括:确定所述特定位置和每一个端点之间的对应距离;和根据与每一个端点相关联的对应类型的角色的所述一个或者多个身体部位的对应尺寸的加权平均值,确定所述一个或者多个身体部位的尺寸。

在一些实施例中,确定所述被显示角色的一个或者多个身体部位的尺寸,包括:计算与每一个端点相对应的相对加权尺寸,根据所述特定位置和该端点之间的对应距离;和计算与每一个端点相对应的相对加权尺寸的平均值作为所述加权平均值。

在一些实施例中,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸,包括:确定所述特定位置和先前位置之间的距离;和根据该距离和所述被显示角色的在所述先前位置的相应的一个或者多个身体部位的尺寸,确定所述被显示角色的一个或者多个身体部位的尺寸。

在一些实施例中,所述方法还包括:存储与在所述输入区域的多个预定位置相对应的所述被显示角色的一个或者多个身体部位的尺寸。在一些实施例中,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸,包括:确定所述特定位置和所述多个预定位置的至少一个预定位置之间的距离;和根据该距离和所述被显示角色的在该至少一个预定位置的相应的一个或者多个身体部位的尺寸,确定所述被显示角色的一个或者多个身体部位的尺寸。

一些实施例包括一种系统,其包括:存储器,用于存储指令;和处理装置,与所述存储器连接,所述处理器被配置为接入所述存储器并执行所述指令,所述指令使得所述处理装置执行操作,包括:提供用户界面,该用户界面包括至少三个端点的用户界面,由多个线条包围的输入区域以及包括被显示角色的预览区域。在至少一些实施例中,所述至少三个端点的每一个端点与对应类型的角色相关联。在至少一些实施例中,所述多个线条中的每一个线条连接所述至少三个端点中的两个相邻端点。在一些实施例中,所述操作包括:接收用户输入,该用户输入指示所述输入区域内的特定位置;响应于接收到所述用户输入,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸;以及根据所述被显示角色的一个或者多个身体部位的所述被确定的尺寸,更新所述预览区域内的所述被显示角色。

在一些实施例中,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸,包括:根据所述特定位置和所述至少三个端点之间的对应距离,选择所述一个或者多个身体部位的对应尺寸。在一些实施例中,所述至少三个端点包括与人类女性角色相关联的第一端点,与人类男性角色相关联的第二端点,以及与小人仔角色相关联的第三端点。

一些实施例包括一种非暂时性计算机可读介质,包括指令,该指令响应于被处理装置执行而使得所述处理装置执行操作,包括:提供用户界面,该用户界面包括至少三个端点的用户界面,由多个线条包围的输入区域以及一个包括被显示角色的预览区域。

在至少一些实施例中,所述至少三个端点的每一个端点与对应类型的角色相关联。在至少一些实施例中,所述多个线条中的每一个线条连接所述至少三个端点中的两个相邻端点。

在一些实施例中,所述操作包括:接收用户输入,该用户输入指示所述输入区域内的特定位置;响应于接收到所述用户输入,根据所述特定位置确定所述被显示角色的一个或者多个身体部位的尺寸;以及根据所述被显示角色的一个或者多个身体部位的所述被确定的尺寸,更新所述预览区域内的所述被显示角色。

在一些实施例中,确定所述被显示角色的一个或者多个身体部位的尺寸,包括:确定所述特定位置和每一个端点之间的对应距离;和根据与每一个端点相关联的对应类型的角色的所述一个或者多个身体部位的对应尺寸的加权平均值,确定所述一个或者多个身体部位的尺寸。

在一些实施例中,所述输入区域被定义为三角形,所述三角形的每一个顶点对应所述至少三个端点的相应端点。在一些实施例中,所述至少三个端点包括与人类女性角色相关联的第一端点,与人类男性角色相关联的第二端点,以及与小人仔角色相关联的第三端点。

附图说明

图1示出了本申请实施例提供的用于角色改进的系统架构图。

图2A示出了本申请实施例提供的角色(化身)示例以及使得用户可以进行角色改进的用户界面。

图2B示出了本申请实施例提供的三维示例性骨架(骨骼)。

图2C示出了本申请实施例提供的使得用户可以定制被显示角色的示例性用户界面。

图3A示出了本申请实施例提供的示例性界面上有被显示角色和在相应端点的用户输入位置。

图3B示出了本申请实施例提供的在示例性用户所选择的用户输入位置的被显示角色。

图4示出了本申请实施例提供的改进角色的示例性方法的流程图。

图5A、图5B和图5C示出了本申请实施例提供的由用户输入所指示的额外位置和对应的被显示角色。

图6A、图6B和图6C示出了本申请实施例提供的响应于所接收的用户输入由一个被显示角色到另一个被显示角色的转换。

图7示出了本申请实施例提供的示例性计算设备的框图。

具体实施方式

在线游戏平台(也称为“用户生成的内容平台”或“用户生成的内容系统”)为用户提供多种交互方式。例如,在线游戏平台的用户可以朝着共同的目标一起工作、共享各种虚拟游戏项目、相互发送电子消息等等。在线游戏平台的用户可以作为虚拟角色加入游戏,扮演游戏特定的角色。例如,虚拟角色可能是团队或多人游戏环境的一部分,其中每个角色都被分配了特定的角色,并具有与角色对应的相关参数,例如服装、盔甲、武器、技能等。在另一个示例中,虚拟角色可以由计算机生成的角色加入,例如,当单人玩家是游戏的一部分时。

在线游戏平台还可以允许平台的用户创建和动画化新角色和化身。例如,在线游戏平台的用户可以创建、设计和定制新的角色。

在一些实施例中,动画可以包括移动一个或多个身体部位的角色,从而模拟诸如步行、跑步、跳跃、打斗、挥舞诸如剑之类的武器等运动。在一些实施例中,角色可能会产生面部表情,其中角色的整个身体或者一部分在移动。动画可以对应于各种运动,例如优雅、武士、芭蕾舞等,并且可以模仿流行的真实和虚构角色的动作。

图1示出了根据本公开的一些实施方式的示例系统架构100。图1和其他图使用相同的附图标记来标识相同的元件。参考数字后的字母,例如“110”,表示该文本特指具有该特定参考数字的元素。文本中没有跟随字母的参考数字,例如“110”,是指任何或所有附图中带有该附图标记的元件的一部分(例如,文本中的“110”指的是附图中的附图标记“110a”、“110b”和/或“110n”)。

系统架构100(这里也称为“系统”)包括在线游戏服务器102、数据存储器120和客户端设备110a、110b和110n(在此统一称为“客户端设备110”)。游戏服务器102、数据下载120和客户端设备110通过网络122耦合。

在线游戏服务器102可以包括游戏引擎104、一个或多个游戏106和图形引擎108等。客户端设备110可以包括游戏应用112和输入输出接口114(例如输入/输出设备)。输入/输出设备可以包括麦克风、扬声器、耳机、显示设备、鼠标、键盘、游戏控制器、触摸屏、虚拟现实控制台等中的一种或多种。

下面提供系统架构100用于说明。在不同的实施方式中,系统架构100可以包括以与图1所示相同或不同的方式配置的相同、更少、更多或不同的元件。

在一些实施例中,网络122可以包括公共网络(例如因特网)、专用网络(例如局域网(LAN)或广域网(WAN))、有线网络(例如以太网网络)、无线网络(例如802.11网络、Wi-Fi网络或无线LAN(WLAN))、蜂窝网络(例如5G网络、长期演进(LTE)网络等)、路由器、集线器、交换机、服务器计算机或它们的组合。

在一些实施例中,数据存储器108可以是非暂时性计算机可读存储器(例如随机访问存储器)、缓存、驱动器(例如硬盘驱动器)、闪存驱动器、数据库系统,或其他类型的能够存储数据的组件或设备。数据存储器108还可以包括能跨越多个计算设备(例如多个服务器计算机)的多个存储组件(例如多个驱动器或多个数据库)。

在一些实施例中,在线游戏服务器102可以包括具有一个或多个计算设备的服务器(例如云计算系统、机架式服务器、服务器计算机、物理服务器集群等)。在一些实施例中,在线游戏服务器102可以是一个独立的系统,可以包括多个服务器,也可以是另一个系统或服务器的一部分。

在一些实施例中,在线游戏服务器102可以包括一个或多个计算设备(例如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板电脑、台式电脑等)、数据存储器(例如硬盘、存储器、数据库)、网络、软件组件和/或可用于在在线游戏服务器102上执行操作并用于向用户提供对在线游戏服务器102的访问。在线游戏服务器102还可包括网站(例如网页)或应用后端软件,其可用于向用户提供对在线游戏服务器102提供的内容的访问,例如,用户可以使用客户端设备110上的游戏应用112访问在线游戏服务器102。

在一些实施例中,在线游戏服务器102可以是一种在用户之间提供连接的社交网络或一种用户生成内容系统,其允许用户(例如终端用户或消费者)与其他用户在在线游戏服务器102上通信。其中通信可以包括语音聊天(例如,同步和/或异步语音通信)、视频聊天(例如,同步和/或异步视频通信)或文本聊天(例如,同步和/或异步的基于文本的通信)。在本公开的一些实施例中,“用户”可以表示为单个个体。然而,本公开的其他实施例包括作为由一组用户或自动化源控制的实体的“用户”(例如,创建用户)。例如,在用户生成的内容系统中联合为社区或群组的一组个人用户可以被视为“用户”。

在一些实施例中,在线游戏服务器102可以是虚拟游戏服务器。例如,游戏服务器可以向可以通过网络122使用客户端设备110访问游戏或与游戏交互的用户社区提供单人游戏或多人游戏。在一些实施例中,游戏(在本文中也称为“视频游戏”、“在线游戏”或“虚拟游戏”)可以是二维(2D)游戏、三维(3D)游戏(例如,3D用户生成的游戏)、虚拟现实(VR)游戏或增强现实(AR)游戏。例如,在一些实施例中,用户可以与其他用户一起参与游戏。在一些实施例中,一个游戏可以与该游戏的其他用户实时进行。

在一些实施例中,游戏过程可以指的是一个或多个玩家在游戏(例如,106)中使用客户端设备(例如,110)的交互或在客户端设备110的显示器或其他输出设备(例如,114)上的交互呈现。

在一些实施例中,游戏106可以包括能使用被配置为向个体呈现游戏内容(例如,数字媒体项)的软件、固件或硬件来执行或加载的电子文件。在一些实施例中,游戏应用112可以被执行,且游戏106可以与游戏引擎104相关联。在一些实施例中,游戏106可能具有一组共同的规则或共同目标,且游戏106的多个环境可以共享一组共同的规则或共同的目标。在一些实施例中,不同的游戏可能有不同的规则或目标。

在一些实施例中,游戏可以具有一个或多个环境(这里也称为“游戏环境”或“虚拟环境”),其中多个环境可以链接。环境的示例可以是三维(3D)环境。游戏应用106的一个或多个环境在本文中可统称为“世界”或“游戏世界”或“虚拟世界”或“宇宙”。世界的示例可以是游戏106的3D世界。例如,用户可以构建链接到由另一个用户创建的另一个虚拟环境的虚拟环境。虚拟游戏的角色可以跨越虚拟边界进入相邻的虚拟环境。

可以注意到,3D环境或3D世界使用图形,该图形使用代表游戏内容的几何数据的3D表示(或至少当前游戏内容以3D内容出现,无论几何数据的3D表示是否为用过的)。2D环境或2D世界使用的图形则使用代表游戏内容的几何数据的二维表示。

在一些实施例中,在线游戏服务器102可以主持一个或多个游戏106,并且可以允许用户使用客户端设备110的游戏应用112与游戏106交互。在线游戏服务器102的用户可以游玩、创建、交互或构建游戏106,还可以与其他用户通信,和/或创建和构建对象(例如,在本文中也称为“项目”或“游戏对象”或“虚拟游戏项目”)。例如,在生成用户生成的虚拟项目时,用户可以创建角色、装饰角色、交互式游戏的一个或多个虚拟环境,或者构建在游戏106中使用的结构等等。在一些实施例中,用户可以与在线游戏服务器102的其他用户购买、出售或交易游戏虚拟游戏对象,例如平台内货币(例如,虚拟货币)。在一些实施例中,在线游戏服务器102可以将游戏内容传输到游戏应用(例如,112)。在一些实施例中,游戏内容(在此也称为“内容”)可以指与在线游戏服务器102或游戏应用相关的任何数据或软件指令(例如,游戏对象、游戏、用户信息、视频、图像、命令、媒体项等)。在一些实施例中,游戏对象(在本文中也称为“项目”或“对象”或“虚拟游戏项目”)可能是指被使用、创建、共享或以其他方式描绘的对象在在线游戏服务器102的游戏应用106或客户端设备110的游戏应用112中。例如,游戏对象可以包括部件、模型、角色、工具、武器、服装、建筑物、车辆、货币、植物群、动物群、上述组件(例如建筑物的窗户)等。

可以注意到,在线游戏服务器102提供游戏106是为了说明的目的,而不是为了限制。在一些实施例中,在线游戏服务器102可以主持一个或多个媒体项目,这些媒体项目可以包括从一个用户到一个或多个其他用户的通信消息。媒体项目可以包括但不限于数字视频、数字电影、数字照片、数字音乐、音频内容、旋律、网站内容、社交媒体更新、电子书、电子杂志、数字报纸、数字有声读物、电子期刊、网络博客、简易信息聚合(RSS)摘要、电子漫画书、软件应用程序等。在一些实施例中,媒体项目可以是可以使用软件、固件或硬件来执行或加载的电子文件,该软件、固件或硬件被配置为将数字媒体项目呈现给实体。

在一些实施例中,游戏106可以与特定用户或特定用户组相关联(例如,私人游戏),或者被广泛提供给有权访问在线游戏服务器102的用户(例如,公共游戏)。在一些实施例中,在线游戏服务器102将一个或多个游戏106与特定用户或用户组相关联,在线游戏服务器102可以使用用户账号信息(例如,用户账号标识符如用户名和密码)。

在一些实施例中,在线游戏服务器102或客户端设备110可包括游戏引擎104或游戏应用112。在一些实施例中,游戏引擎104可用于一些游戏106的开发或执行。例如,游戏引擎104可以包括用于2D、3D、VR或AR图形的渲染引擎(“渲染器”)、物理引擎、碰撞检测引擎(和碰撞响应)、声音引擎、脚本功能、动画引擎、人工智能引擎、网络功能、流媒体功能、存储器管理功能、线程功能、场景图功能或对电影的视频支持,以及其他功能。游戏引擎104的组件可以生成帮助计算和渲染游戏的命令(例如,渲染命令、碰撞命令、物理命令等)。在一些实施例中,客户端设备110/116的游戏应用112分别可以独立工作,也可以与在线游戏服务器102的游戏引擎104协同工作,或者两者结合。

在一些实施例中,在线游戏服务器102和客户端设备110都可以执行游戏引擎(分别为104和112)。使用游戏引擎104的在线游戏服务器102可以执行部分或全部游戏引擎功能(例如,生成物理命令、渲染命令等),或者将部分或全部游戏引擎功能卸载到客户端设备110的游戏引擎104。在一些实施例中,每个游戏106在在线游戏服务器102上执行的游戏引擎功能和客户端设备110上执行的游戏引擎功能之间可能具有不同的比例。在线游戏服务器102的引擎104可以用于在至少两个游戏对象之间发生碰撞的情况下生成物理命令,而附加的游戏引擎功能(例如,生成渲染命令)可以被下载到客户端设备110。在一些实施例中,在线游戏服务器102和客户端设备110上执行的游戏引擎功能的比率可以基于游戏过程条件而改变(例如动态地)。例如,如果参与特定游戏106的游戏过程的用户数量超过阈值数量,则在线游戏服务器102可以执行先前由客户端设备110执行的一个或多个游戏引擎功能。

例如,用户可能正在客户端设备110上玩游戏106,可以发送控制指令(例如,用户输入,如右、左、上、下、用户选择或角色位置和速度信息等)到在线游戏服务器102。在线游戏服务器102在接收到来自客户端设备110的控制指令之后,可以基于控制指令发送游戏过程指令(例如,参与该分组游戏过程的角色的位置和速度信息或者命令如渲染命令、碰撞命令等)到客户端设备110。例如,在线游戏服务器102可以对控制指令执行一个或多个逻辑操作(例如,使用游戏引擎104)以生成用于客户端设备110的游戏过程指令。在其他情况下,在线游戏服务器102可以通过一个或多个或从一个客户端设备110到其他客户端设备(例如,从客户端设备110a到客户端设备110b)的控制指令参与游戏106。客户端设备110可以使用游戏过程说明并使得游戏过程在客户端设备110的显示器上展示。

在一些实施例中,控制指令可能是指示用户角色在游戏中的动作的指令。例如,控制指令可以包括用户输入来控制游戏中的动作,例如右、左、上、下、用户选择、角色位置和方向数据、力传感器数据等。控制指令可以包括角色位置和速度信息。在一些实施例中,控制指令直接发送到在线游戏服务器102。在其他实施例中,控制指令可以从一个客户端设备110发送到另一个客户端设备(例如,从客户端设备110b发送到客户端设备110n)。其中另一个客户端设备使用本地游戏引擎104生成游戏过程指令。控制指令可以包括在音频设备(例如,扬声器、耳机)上播放来自另一个用户的语音通信消息或其他声音的指令等,例如使用这里描述的音频空间化技术生成的语音通信或其他声音。

在一些实施例中,游戏过程指令可以指允许客户端设备110呈现游戏的游戏过程的指令,例如多人游戏。游戏过程指令可以包括用户输入(例如控制指令)、角色位置和速度信息或命令(例如物理命令、渲染命令、碰撞命令等)中的一个或多个。

在一些实施例中,角色(或通常的游戏对象)由组件构成,其中一个或多个可由用户选择,这些组件自动连接在一起以帮助用户进行编辑。一个或多个角色(在此也称为“化身”或“模型”)可以与用户相关联,其中用户可以控制角色以促进用户与游戏106的交互。在一些实施例中,角色包括组件如身体部位(例如头发、手臂、腿等)和配件(例如,T恤、眼镜、装饰图像、工具等)。在一些实施例中,角色的可自定义的身体部位包括头部类型、身体部位类型(手臂、腿部、躯干和手)、面部类型、头发类型和皮肤类型等。在一些实施例中,可自定义的配饰包括服装(例如衬衫、裤子、帽子、鞋子、眼镜等)、武器或其他工具。在一些实施例中,用户还可以控制角色的尺寸(例如,高度、宽度或深度)或角色的组件的尺寸。在一些实施例中,用户可以控制一个角色的比例(例如,块状、解剖状等)。需要注意的是,在一些实施例中,角色可能不包括角色游戏对象(例如身体部位等),但用户可以控制角色(没有角色游戏对象)以方便用户与游戏的交互(例如,没有渲染角色游戏对象,但用户仍然控制角色来控制游戏内动作的益智游戏)。

在一些实施例中,一个组件,例如身体部位,可能是原始几何形状,例如块、圆柱、球体等,或者其他原始形状,例如楔形、圆环、管之类。在一些实施例中,创建者模块可以发布一个用户的角色供在线游戏服务器102的其他用户查看或使用。在一些实施例中,创建、修改或者字都应以角色,其它游戏对象、游戏106或游戏环境,可以通过用户使用输入输出接口(例如,开发者接口)并且使用或不使用脚本(或者使用或不使用应用程序编程接口API)来执行。可以注意到,出于说明而非限制的目的,角色被描述为具有人形形式。还可以注意到,角色可以具有任何形式,例如车辆、动物、无生命物体或其他创造性形式。

在一些实施例中,在线游戏服务器102可以将用户创建的角色存储在数据中心108中。在一些实施例中,在线游戏服务器102维护一个角色目录和游戏目录,其可以呈现给用户。

在一些实施例中,游戏目录包括在线游戏服务器102上存储的游戏图像。另外,用户可以从角色目录中选择一个角色(例如,用户或其他用户创建的角色)参与所选择的游戏。角色目录包括存储在在线游戏服务器102上的角色图像。在一些实施例中,角色目录中的一个或多个角色可能已经由用户创建或定制。在一些实施例中,所选择的角色可能有角色设置来定义角色的一个或多个组件。

在一些实施例中,用户的角色可以包括组件的配置,其中组件的配置和外观以及更一般的角色外观可以通过角色设置来定义。在一些实施例中,用户角色的角色设置至少可以部分由用户选择。在其他实施方式中,用户可以选择具有默认角色设置或其他用户选择的角色设置的角色。例如,用户可以从具有预定义角色设置的角色目录中选择默认角色,并且用户可以通过更改一些角色设置(例如,添加带有自定义徽标的衬衫)来进一步自定义默认角色。在线游戏服务器102可能会将角色设置与特定的角色相关联。

在一些实施例中,客户端设备110可能每个都包括计算设备,例如个人计算机(PC)、移动设备(例如,膝上型电脑、手机、智能手机、平板电脑或上网本电脑)、网络连接的电视、游戏机等。在一些实施例中,客户端设备110也可以称为“用户设备”。在一些实施例中,一个或多个客户端设备110可以在任何给定时刻连接到在线游戏服务器102。需要说明的是,客户端设备110的数量是作为示例而提供的。在一些实施例中,可以使用任意数量的客户端设备110。

在一些实施例中,每个客户端设备110可以分别包括一个游戏应用112的实例。在一种实施方式中,游戏应用112可以允许用户使用在线游戏服务器102并与在线游戏服务器102交互,例如控制在线游戏服务器102发起的虚拟游戏中的虚拟角色,或者查看或上传内容,例如游戏106、图像、视频项目、网页、文档等。在一个示例中,游戏应用可以是可以访问、检索、呈现或导航内容(例如,虚拟环境中的虚拟角色等)的网络应用程序(例如,与网络浏览器结合操作的应用程序),其由网络服务器提供服务。在另一个示例中,游戏应用可以是本地应用程序(例如,移动应用程序、应用程序或游戏程序),其在客户端设备110本地安装和执行并且允许用户与在线游戏服务器102交互。游戏应用可以向用户呈现、显示或呈现内容(例如,网页、媒体查看器)。在一个实施例中,游戏应用还可以包括嵌入在网页中的嵌入式媒体播放器(例如Flash播放器)。

根据本公开的各方面,游戏应用可以是在线游戏服务器的应用程序,供用户构建、创建、编辑、上传内容到在线游戏服务器102以及与在线游戏服务器102交互(例如,游玩由在线游戏服务器102主持的游戏106)。如此,游戏应用可以由在线游戏服务器102提供给客户端设备110。在另一示例中,游戏应用可以是从服务器下载的应用。

在一些实施例中,用户可以通过游戏应用登录在线游戏服务器102。用户可以通过提供用户账号信息(例如,用户名和密码)来访问用户账号,其中用户账号与可参与在线游戏服务器102的一个或多个游戏106的一个或多个角色相关联。

通常,在一个实施方式中描述为由在线游戏服务器102执行的功能也可以由客户端设备110或在其他实施方式中,如果合适的话,由服务器来执行。此外,归因于特定组件的功能可以由一起操作的不同或多个组件来执行。在线游戏服务器102还可以作为通过适当的应用程序编程接口(API)提供给其他系统或设备的服务来访问,因此不限于在网站中使用。

在一些实施例中,在线游戏服务器102可以包括图形引擎106。在一些实施例中,图形引擎106可以是允许一些在线游戏服务器102提供图形和动画能力。在一些实施例中,图形引擎106可以执行下面结合图4所示的流程图描述的一个或多个操作。

图2A示出了本申请实施例提供的角色(化身)示例以及使得用户可以进行角色改进的用户界面。

在一些实施例中,角色可以通过其特征(身体部位)来定义,包括头部、肩部、手臂、躯干、臀部和腿部。

在图2A所示的说明性示例中,角色200包括头部202、肩部204、躯干206、臀部208、一对手臂210、一对腿212等特征(身体部位)。

在一些实施例中,角色可以具有这里列出的身体部位的任何组合。在一些实施例中,角色可以选择包括纹理和配件。纹理可能是指表面特征,例如皮肤类型、皮肤颜色、头发类型、头发颜色等。配件可能是指角色佩戴、携带或以其他方式佩戴在身上的一件或多件物品。例如,配件可能包括盔甲、衣服、武器等。

在一些实施例中,角色可以可选地包括身体元件和服装。身体元件可以指表面特征,例如肤色、发型、发色等。服装可以指角色穿戴、携带或以其他方式穿戴在角色身上的一件或多件物品。例如,服装可能包括帽子、衣服、配饰、装备等。

在一些实施例中,模板可以用于不同类型的角色。角色可能类似于人类、动物、机器人、鸟类和其他真实和虚构的物体/生物。

图2B示出了本申请实施例提供的三维示例性骨架(骨骼)。

在一些实施例中,角色表示为3D模型,包括用于绘制角色的表面展示(也成为皮肤或网格)和具有相互连接的多个骨头的层次化组合(也称为骨架或骨骼)。骨骼可用于使角色动画化以及用于模拟角色的移动和动作。3D模型可以表示为一种数据结构,可以修改该数据结构的一个或多个参数来改变角色的各种属性,例如尺寸(高度、宽度、周长等);体型;运动风格;身体部位的数量/类型;比例(例如肩臀比例);头部尺寸等。

在图2B中描绘的说明性示例中,角色包含一个具有15个关节的骨骼。该骨骼包括各个关节代表了:头部252、右上臂254、左上臂256、右下臂258、左下臂260、上躯干262、下躯干264、右上腿266、左上腿268、右手270、左手272、右下腿274、左下腿276、右脚278和左脚280。

在一些实施例中,角色的身体部位可以通过提供角色形状定义的网格来连接。在一些实施例中,可能会在角色中添加额外的模式和/或纹理。在一些实施例中,角色可能会增加配件,例如工具、武器等。

在一些实施例中,身体部位的尺寸、骨骼关节的布局、关节之间的距离等由用户在设置时提供。在一些实施例中,可以向用户提供预先确定的尺寸(通过示例、库等)以供选择。在各种实施方式中,可以调整身体部位之间的相对距离以实现特定类型的角色。例如,不同的距离比例,例如肩臀比,可能与更类似于男性(男性化)或更类似于女性(女性化)的角色相关联。同样,可以选择头部尺寸、宽度或高度等参数来生成不同身体比例的角色。

图2C示出了本申请实施例提供的使得用户可以定制被显示角色的示例性用户界面。

在该说明性示例中,用户界面285包括代表被显示角色的不同表示的端点290、292、294。与用户界面相关联的显示区域由三个或更多类型的端点(顶点)来表示。每个端点都与相应类型的角色相关联。在一些实施例中,用户界面被显示,例如在诸如与用户设备110相关联的显示器的输出设备上。用户使用与用户设备110相关联的输入设备提供输入。该输入通过选择在一个区域内的位置296来指示被显示角色的特定外观,该区域由连接相邻端点的线条定义。在一些实施例中,用户选择的位置可能会在显示器上突出显示,以向用户提供反馈。

在一些实施例中,可以在一个或多个端点附近显示代表相应角色类型的图标。在一些实施例中,端点附近可能会显示该角色类型的图像。

在一些实施例中,用户可以通过利用设置在用户设备的显示器上的触摸屏来指示未知,可以通过使用鼠标或定点设备执行移动和点击操作,还可以通过手势、口头输入或其他输入机制。

在一些实施例中,可以使用三个实例,如图2C所示。在一些实施例中,可以使用四个、五个或五个以上的端点,每个都可以代表被显示角色的不同表示。

在一些实施例中,可以通过直线线条来连接相邻端点。在一些实施例中,可以利用一些弯曲的线条来连接相邻端点。在这些实施方式中,弯曲的线条可以是凹的或凸的。用户选择更接近线条的端点可能会导致对角色的外部形状的相应调整,例如,与选择在端点之间的直线线条时相比均有更多对更少的凸出。

在一些实施例中,用户界面可以是三维的,端点可以分布在三维空间中,用户输入可以指示选择在由连接端点的平面而定义的体积内的一个位置。

图3A示出了本申请实施例提供的示例性界面上有被显示角色和在相应端点的用户输入位置。

角色可以是各种类型和形式,包括类人的、块状的、基于动物的、基于虚构的角色等。

在该说明性示例中,人形(人类男性和人类女性)和块状(小人仔)角色被描绘以展示本公开的技术。用户界面上的对应端点,如之前参考图2C所解释的也被描绘。

在一些实施例中,人类男性角色可能被描绘成一个类人角色并具有男性特征。在一些实施例中,男性特征可能包括更宽的肩膀和更窄的臀部。在一些实施例中,人类女性角色可能包括具有女性特征的人类角色。在一些实施例中,女性的特征可能包括比人类男性角色更窄的肩膀和更宽的臀部。在一些实施例中,人类女性角色的身高可能比人类男性角色要小。

在一些实施例中,小人仔角色可能被描绘成一个块状风格的角色。小人仔的特征可能包括较大的头部、较短的躯干和较短的四肢(手臂和腿)。

在图3A中,最左边的图描绘了一个人类女性角色310,具有窄肩314和宽臀316的特征。角色对应用户界面中输入区域的左上角端点320。

在图3A中,最右边的图描绘了一个小人仔角色370,其特征是大头374、短躯干376和短四肢378。角色对应用户界面中输入区域的右上角端点380。

在该说明性示例中,用户界面330包括对应于角色的不同表示的端点。比如用户界面包括多个端点代表了人类女性角色310、人类男性角色340、小人仔角色370。如图3A所示,角色的其他方面,例如衣服、头饰等,还有保留属性如颜色、纹理、材质等,并且仅根据角色尺寸的变化进行调整,例如小人仔角色的大头,人类男性角色的更宽的肩膀,人类女性角色的更宽的臀部等等。

图3B示出了本申请实施例提供的在示例性用户所选择的用户输入位置的被显示角色。在该示例中,用户通过选择位置390提供了指示角色的特定外观的输入。显示区域还可以包括预览区域,其中提供与用户选择的位置匹配的角色的预览。

在该说明性示例中,用户指示的位置与三个端点320、350和380大致等距。因此,所选择的(和描绘的)角色385是人类女性角色、人类男性角色还有小人仔角色。混合角色是三个角色的插值。例如,混合角色的头部尺寸是三个角色的平均值。在一些实施例中,尺寸可能是一个简单的平均值,也可能是加权平均值。在一些实施例中,角色特征的权重可能是基于与每个各自对应端点的距离。其他参数例如肩臀比、高度等也可以类似方式确定。

图4示出了本申请实施例提供的改进角色的示例性方法的流程图。

操作开始于块410,其中提供用户界面(UI)。UI被配置为使用户能够提供用户输入来缩放角色。UI可以通过例如显示器向用户提供视觉反馈。在不同的实施例中,UI可以包括用于用户提供指示位置的输入的机制。例如,用户输入可以是客户端设备110的触摸屏的触摸输入,客户端设备110的手势检测硬件的手势输入,客户端设备110的麦克风的语音输入,鼠标或客户端设备110的其他指针设备,或其他合适的输入机制。

在一些实施例中,与用户界面关联的显示区域包括三个或三个以上端点(顶点)的描绘。这些端点的每一个端点都与相应类型的角色相关联。在一些实施例中,可能会在该端点附近显示代表相应类型角色的图标。在一些实施例中,角色类型的图像或程式化表示可能会显示在端点附近。

在一些实施例中,相邻端点通过线条连接以包围输入区域。在一些实施例中,相邻端点由直线线条连接。

在一些实施例中,三个端点被使用并且输入区域被定义为三角形。在这些实施例中,所述三角形的每一个顶点对应相应端点并且与相应角色类型相关联。在一些实施例中,第一端点与人类女性角色相关联,第二端点与人类男性角色相关联,以及第三端点与小人仔角色相关联。在这些实施例中,用户选择了与特定端点匹配的位置,即表示选择了相应的角色。

显示区域还可以包括预览区域,其中提供与用户选择的位置匹配的角色的预览。被显示角色可能是人形角色,包括身体部位,例如人形角色的头部、躯干、左臂、右臂、左腿或右腿。在一些实施例中,角色可以被建模为一个三维模型,将骨骼中的身体部位与多个关节连接起来。在一些实施例中,骨骼中可能有15个关节。用户可以在设置或初始化时为每个端点定义身体部位的尺寸(例如头部尺寸、手臂长度等)。操作继续到块420。

在块420,接收用户输入,指示输入区域内的特定位置。用户输入可以由用户通过利用用户界面(例如利用图2C中描绘的用户界面285)来提供。在一些实施例中,用户可以通过一个或多个手指在屏幕上的移动和/或接触来使用触摸屏提供用户输入。在一些实施例中,用户输入可以通过将光标移动到特定位置来提供。操作继续到块430。

在块430,基于接收到的位置确定角色的身体部位的尺寸。在一些实施例中,身体部位的尺寸(长度、周长等)是根据用户指示的位置确定的,可以是根据指示位置和每一个端点之间的对应距离。

在一些实施例中,身体部位的尺寸可以通过在相应端点的身体部位的尺寸之间的插值(轮廓插值、非轮廓插值等)来确定。例如,对于位于三角形用户界面285的任意一条边的用户指示位置,在由该边连接的两个端点各自代表的两个角色之间执行插值。在用户指示的其他位置,在三角形内部,在每个端点对应的角色的身体部位的相对尺寸之间进行插值。

在一些实施例中,端点代表角色的最终状态(通常由用户定义和/或从默认设置中导出)。例如人类男性、人类女性及小人仔,而所有其他用户指示的位置是这三种最终状态的平均。在一些实施例中,中间状态可能是三个最终状态中的加权平均值。

在一些实施例中,可以利用线性加权函数。例如,手臂和腿部肌肉质量的尺寸可以基于为三种类型的角色提供的手臂和腿部肌肉质量尺寸的加权平均值。类似地,肢体长度可以基于为三种类型的角色提供的肢体长度的加权平均值。

基于用户指示的位置,被显示角色的一个手臂可以通过确定上臂和下臂(例如左上臂和左下臂)的端点之间的距离而实现,而这些端点来自有15个端点的骨骼,其基于用户所选择的位置(利用端点的参考手臂长度,例如人类女性的长度是1,人类男性的长度是1.5,而小人仔的长度是0.8)。被显示角色的手臂长度,因此,可以利用参考手臂长度以及用户所指示位置和对应端点之间的距离而确定。

类似地,基于用户指示的位置,肌肉质量可以分布在被显示角色的肩肘区域。例如,如果用户指示的位置位于三角形上与人类男性相对应的端点更接近的一边(如所示的位于右侧),则被显示角色可能包括更多的肌肉质量,相对于其位于三角形上与人类女性相对应的端点更接近的一边(如所示的位于左侧)。

在一些实施例中,用户指示位置的身体部位的尺寸可以根据与每个端点相关的身体部位的尺寸的加权平均值来确定。

在一些实施例中,对这些端点的每个端点的相对加权尺寸取简单平均值。

在一些实施例中,可以利用距离的非线性加权。在一些实施例中,距离的加权可能会在三角形中示出,例如通过渐变填充。在一些实施例中,更高的权重可能与距离端点更近的位置相关联。

在一些实施例中,可以根据先前用户指示位置(例如最后指示位置)的身体部位的尺寸作为确定在当前用户指示位置的身体部位尺寸的依据。在用户指示位置的身体部位尺寸是根据用户指示位置与先前位置的距离和在先前位置的身体部位尺寸确定的。这可以使得能够更快地确定身体部位的尺寸(与基于端点处的参考尺寸的直接计算相比)并且可以为用户指示的位置的细微动作提供足够准确的确定。

在一些实施例中,确定并存储了与输入区域内的预定位置相关联的身体部位。在一些实施例中,一组位置的一些身体部位的尺寸可以存储为查找表(例如存储在图1所示的数据存储器120中)。例如,这种存储可以省下执行插值计算的需要从而提供有益技术效果,并且替代地通过数据库查找操作来确定角色属性,从而具有较低计算成本。

在一些实施例中,基于用户指示位置与预定位置之间的距离以及在预定位置处的身体部位的尺寸,来确定在用户指示位置处的身体部位的尺寸。

在一些实施例中,被显示角色的一个或多个身体部位的被确定尺寸存储在一个位置中(例如存储在数据存储器120中,以备后续检索和使用)。

操作继续到块440。

在块440,根据身体部位的被确定尺寸,在预览区域中更新被显示角色。在一些实施例中,被显示角色上描绘的纹理、身体元素、服装等也进行了更新。在一些实施例中,更新可能包括确定被更新的纹理的尺寸、身体元素、服装等。

在一些实施例中,根据用户界面的用户输入调整被显示角色,可以调整亮度过渡或者颜色过渡从而生成纹理的平滑过渡。

在一些实施例中,一个或多个与被显示角色相关联的附件也可以根据被显示角色的更新在尺寸上进行调整。在一些实施例中,可能会向用户提供一个选项,以保持附件的尺寸随着被显示角色尺寸的变化保持不变。

块410至块440可以以与上述不同的顺序执行(或重复)和/或可以省略一个或多个步骤。例如,块430和块440可以基本上同时执行,例如提供更新角色的实时预览。例如,可以在用户提供连续输入时提供实时预览,例如通过在触摸屏上滑动手指,这可以导致对预览区域中被显示角色的相应计算和更新。在一些实施例中,某些块可以在多个子块中执行,例如块430可以通过分别计算每个身体部位的尺寸,然后将计算出的尺寸组合成一个角色来执行。

图5A、图5B和图5C示出了本申请实施例提供的由用户输入所指示的额外位置和对应的被显示角色。

在该说明性示例中,角色被描绘为在连接相邻端点的边缘的中点处的被显示角色。例如,在图5A中,角色510是对应于在用户指示位置520的被显示角色。角色510位于连接对应于人类男性角色和人类女性角色的多个端点的边缘的中点。相应地,被显示角色包括了身体部位的尺寸,其代表了人类男性和人类女性角色中身体部位的平均尺寸。在确定角色510的尺寸时,不考虑小人仔的身体部位的尺寸(例如其夸张的头部尺寸)。

类似地,在图5B中,角色540是对应于用户指示位置550的被显示角色。角色540位于连接与小人仔角色和人类女性角色对应的端点的边缘的中点。因此,被显示角色包括身体部位的尺寸,这些尺寸代表了小人仔角色和人类女性角色中身体部位的尺寸的平均值。在确定角色540的尺寸时,不考虑人类男性身体部位的尺寸(例如大肩膀)。

在图5C中,角色570是一个对应于用户指示位置580的被显示角色。角色570位于连接与小人仔角色和人类男性角色对应的端点的边缘的中点。因此,被显示角色包括身体部位的尺寸,这些尺寸代表了小人仔角色和人类男性角色中身体部位的尺寸的平均值。在确定角色540的尺寸时,不考虑人类女性的身体部位的尺寸(例如,宽臀)。

如上所述,可以预先计算并存储表示连接相邻端点520、550和580的边缘的中点的位置处的身体部位的尺寸。在一些实施例中,可以利用在这些和其他预定位置处存储的尺寸来加速在这些位置以及确定为距预定位置在预定距离内的位置处的被显示角色的渲染。

在一些实施例中,这些存储的尺寸和这些位置以及其它位置可以通过提供额外的参考位置(除了这些位置以外)来加速被显示角色在用户输入位置处的渲染,通过在特定用户输入位置处更快地计算身体部位的尺寸。

图6A、图6B和图6C示出了本申请实施例提供的响应于所接收的用户输入由一个被显示角色到另一个被显示角色的转换。

在该说明性示例中,根据本公开的技术,用户设备610(类似于图1描述的客户端设备110)用于调整被显示角色的尺寸。

在图6A中,提供初始用户指示位置630,使得角色620显示在用户设备610的屏幕上。可以理解,由于位置630紧邻小人仔角色对应的位置,被显示角色类似于小人仔(例如,如图3A中的角色370所示)。

在图6B中,用户指示了用户指示位置650(例如通过在用户设备610的触摸屏上移动他们的手指),使得角色640显示在用户设备610的屏幕上。

在图6C中,用户指示了用户指示位置670,使得角色660显示在用户设备610的屏幕上。由于位置670非常接近对应于人类男性角色的端点群,被显示角色类似于人类男性角色(例如,如图3A中的角色340所示)。

在一些实施例中,响应于用户指示位置从一个到另一个的移动,两个或多个被显示角色可以以瞬时方式显示(例如,通过以间歇方式显示它们)以使得用户能够选择首选的被显示角色。

图7示出了本申请实施例提供的示例性计算设备700的框图,其能用于实现一个或者多个上述的特征。在一个示例中,设备700可用于实现计算机设备(例如图1的102和/或110),并执行本文所述的适当方法实施例。计算设备700可以是任何合适的计算机系统、服务器或其他电子或硬件设备。例如,计算设备700可以是大型计算机、台式计算机、工作站、便携式计算机或电子设备(便携式设备、移动设备、手机、智能手机、平板电脑、电视、电视机顶盒、个人数字助理PDA、媒体播放器、游戏设备、可穿戴设备等)。在一些实施例中,设备700包括处理器702、输入输出接口706和音频/视频输入/输出设备714。

处理器702可以是一个或多个处理器和/或处理电路以执行程序代码和控制设备700的基本操作。“处理器”包括处理数据、信号或其他信息的任何合适的硬件和/或软件系统、机制或组件。处理器可以包括具有通用中央处理单元CPU、多个处理单元、用于实现功能的专用电路或其他系统的系统。处理操作不必限于特定的地理位置,或具有时间限制。例如,处理器可以以“实时”、“线下”、“批处理模式”等方式执行其功能。部分处理操作可以在不同时间和不同地点,且由不同(或者相同)的处理系统执行。计算机可以是任意与存储器连接的处理器。

存储器704通常设置在设备700中供处理器702访问,并且可以是任何合适的处理器可读存储介质,例如随机访问(RAM)、只读存储器(ROM)、电可擦除只读存储器(EEPROM)、闪存等,只要适合存储由处理器执行的指令并且与处理器702分离和/或与其集成。存储器704可以存储由处理器702在服务器设备700上运行的软件,包括操作系统708、一个或多个应用程序710,例如音频空间化应用程序和应用程序数据712。在一些实施例中,应用程序710可以包括指令,其使得处理器702能够执行这里描述的功能,例如图3的方法的一些或全部步骤。

例如,应用程序710可以包括音频空间化模块712,如这里所描述的,其可以在在线游戏服务器(例如,102)内提供音频空间化。存储器704中的任何软件都可以替代地存储在任何其他合适的存储位置或计算机可读介质上。此外,存储器704(和/或其他连接的存储设备)可以存储在本文描述的特征中使用的指令和数据。存储器704和任何其他类型的存储器(磁盘、光盘、磁带或其他有形介质)都可以被视为“存储器”或“存储设备”。

输入输出接口706可以提供使服务器设备700与其他系统和设备接口的功能。例如,网络通信设备、存储设备(例如存储器和/或数据存储器108)、输入/输出设备可以通过接口706进行通信。在一些实施例中,输入输出接口可以连接到包括输入设备在内的接口设备(键盘、指点设备、触摸屏、麦克风、相机、扫描仪等)和/或输出设备(显示设备、扬声器设备、打印机、电机等)。

音频/视频输入/输出设备714可以包括可用于接收用户输入的用户输入设备(例如,鼠标等)、显示设备(例如,屏幕、监视器等)和/或组合的输入和显示设备,其可用于提供图形和/或视觉输出,例如图3的步骤340的显示输出。

为了便于说明,图7示出了处理器702、存储器704、输入输出接口706以及软件块708和710,并每个表示为一个方框。这些方框可以代表一个或多个处理器或处理电路、操作系统、存储器、输入输出接口、应用程序和/或软件引擎。在其他实施方式中,设备700可能不具有所示出的所有组件和/或可能具有其他元件,包括其他类型的元件,以代替此处所示的元件或除此处所示的元件之外的元件。虽然在线游戏服务器102被描述为执行如本文中一些实施例中所述的操作,但在线游戏服务器102或类似系统的任何合适的组件或组件的组合,或与此类系统相关联的任何合适的处理器或多个处理器,可以执行所描述的操作。

用户设备还可以实现和/或与这里描述的特征一起使用。示例用户设备可以是包括一些与设备700类似的组件的计算机设备,例如处理器702、存储器704和输入输出接口706。适用于客户端设备的操作系统、软件和应用程序可以提供在存储器中并由处理器使用。客户端设备的输入输出接口可以连接网络通讯设备,也可以连接输入输出设备,如麦克风用于捕捉声音、摄像头用于捕捉图像或视频、用于捕捉用户输入的鼠标、用于识别用户手势的手势设备、用于检测用户输入的触摸屏、用于输出声音的音频扬声器设备、用于输出图像或视频的显示设备或其他输出设备。例如,音频/视频输入/输出设备714内的显示设备可以连接到(或包括在)设备700中以显示如本文所述的预处理和后处理的图像,其中这样的显示设备可以包括任何合适的显示设备,例如LCD、LED、等离子显示屏、CRT、电视、监视器、触摸屏、3D显示屏、投影仪或其他视觉显示设备。一些实施例可以提供音频输出设备,例如阅读文本的语音输出或合成。

本文描述的一种或多种方法(例如,方法400)可以通过可以在计算机上执行的计算机程序指令或代码来实现。例如,代码可以由一个或多个数字处理器(例如,微处理器或其他处理电路)实现,并且可以存储在包括非暂时性计算机可读介质(例如,存储介质)的计算机程序产品上,例如,磁、光、电磁或半导体存储介质,包括半导体或固态存储、磁带、计算机软盘、随机访问存储器(RAM)、只读存储器(ROM)、闪存存储器、硬磁盘、光盘、固态驱动器等。程序指令也可以包含在电子信号中并作为电子信号提供,例如以从服务器交付的软件即服务(SaaS)的形式(例如,分布式系统和/或云计算系统)。或者,一种或多种方法可以在硬件(逻辑门等)中或在硬件和软件的组合中实现。示例硬件可以是可编程处理器(例如现场可编程门阵列(FPGA)、复杂可编程逻辑设备)、通用处理器、图形处理器、专用集成电路(ASIC)等。一种或多种方法可以作为在系统上运行的应用程序的一部分或组件来执行,或者作为与其他应用程序和操作系统结合运行的应用程序或软件来执行。

本文描述的一种或多种方法可以在能于任何类型的计算设备上运行的独立程序、在网页浏览器上运行的程序、在移动计算设备(例如,手机、智能手机、平板电脑、可穿戴设备(手表、臂章、珠宝、头饰、护目镜、眼镜等)、笔记本电脑等)上运行的移动应用程序中运行。在一个示例中,可以使用客户端/服务器架构,例如移动计算设备(作为客户端设备)将用户输入数据发送到服务器设备并从服务器接收用于输出(例如用于显示)的最终输出数据。在另一个示例中,所有计算都可以在移动计算设备上的移动应用程序(和/或其他应用程序)内执行。在另一个示例中,计算可以在移动计算设备和一个或多个服务器设备之间拆分。

尽管已经针对其特定实施方式描述了描述,但是这些特定实施方式仅是说明性的,而不是限制性的。示例中说明的概念可以应用于其他示例和实现。

应当理解的是,如本领域技术人员所知,本公开中描述的功能块、操作、特征、方法、设备和系统可以被集成或划分为系统、设备和功能块的不同组合。可以使用任何合适的编程语言和编程技术来实现特定实现的例程。可以采用不同的编程技术,例如,过程的或面向对象的。例程可以在单个处理装置或多个处理器上执行。虽然步骤、操作或计算可以以特定顺序呈现,但是在不同的特定实现中可以改变顺序。在一些实施例中,本规范中显示为顺序的多个步骤或操作可以同时执行。

相关技术
  • 动画角色的改进
  • 动画角色头部系统和方法
技术分类

06120113803292