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

动态内容的本地自动化

文献发布时间:2023-06-19 18:35:48


动态内容的本地自动化

本申请主张美国专利申请US 16/916,869的优先权,标题为“动态内容的自动本地化”,在2020年6月30日提交,该申请被全文引用于此以供各种用途。

技术领域

本申请涉基于计算机的游戏,特别是动态内容的自动本地化的方法、系统和计算机可读介质。

背景技术

某些在线平台(如游戏平台、媒体交流平台等)允许用户通过互联网相互联系、相互互动(如在游戏中)、创建游戏和彼此分享信息。在线平台可能会进一步提供游戏内容。因此正如游戏内容是针对第一个地区或区域制作,其他地区或区域可能也希望获得类似或相同的游戏内容。

为了向其他地区提供游戏内容,游戏开发者需要投入资源来翻译游戏内容。由于有些在线平台进一步依赖于用户生成的游戏内容,因此想要获得所有内容的经过审查的翻译是非常困难或难以管理的。此外,由用户交互驱动的动态内容使得向多个地区或者区域提供本地化内容变得更加复杂。

基于上述提出了一些实施方式。

发明内容

根据本申请的一方面,提供了一种计算机实现方法用于动态内容的自动本地化。所述方法包括:接收与来自第一客户区域的游戏相关联的可视化内容,所述可视化内容包括在所述第一客户区域以第一语言展示的文本;转化所述文本以生成与第二客户区域相关联的第二语言的翻译后文本;和存储所述翻译后文本在与所述可视化内容相关联的数据库。

在一些实施方式中,所述方法还包括:接收来自所述第二客户区域的用于所述可视化内容的请求;基于所述第二客户区域获取本地化内容,其中所述被获取的本地化内容包括至少一个所述翻译后文本;和响应于所述请求传输所述被获取的本地化内容给在所述第二客户区域的客户端设备。

在一些实施方式中,所述转化包括:基于所述文本和所述可视化内容生成备选数据库项;选择所述备选数据库项的子集从而获得剩余数据库项池;评估所述剩余数据库项池中的项从而生成重要性排序;和过滤从而从所述剩余数据库项池中移除与不达到第一重要性阈值的相应重要性排序相关联的一个或者多个项。

在一些实施方式中,所述第一重要性阈值是翻译后文本在所述第二客户区域被准确展示的重要性的值。

在一些实施方式中,所述转化包括将来自所述可视化内容的所述文本翻译成多种语言,每一种语言与相应客户区域相关联,并且所述存储包括存储所述翻译后文本在所述数据库,所述被存储的翻译后文本与所述相应客户区域相关联。

在一些实施方式中,所述被存储的翻译后文本被配置为在本地化内容中被获取并且以所述多种语言被传输给客户端设备。

在一些实施方式中,所述转化包括:基于所述文本和所述可视化内容生成备选数据库项;和基于所述文本出现在所述可视化内容的上下文选择所述备选数据库的子集。

在一些实施方式中,所述选择所述备选数据库项的子集包括移除与所述可视化内容的无效源相关联的备选数据库项。

在一些实施方式中,所述翻译后文本与达到第一重要性阈值的重要性排序值相关联。

在一些实施方式中,所述重要性排序值是翻译后文本在所述第二客户区域被准确展示的重要性的度量。

在一些实施方式中,所述重要性排序值是基于以下的一个或者多个:浏览所述可视化内容的用户的数量,与所述可视化内容相关联的会话的数量,或者所述可视化内容的源。

在一些实施方式中,所述文本是用户生成文本且由与所述游戏相关联的用户提供。

根据本申请的另一方面,提供了一种用于动态内容的自动本地化的计算机实现方法。所述方法包括:

接收与来自第一客户区域的游戏相关联的可视化内容,所述可视化内容包括在所述第一客户区域以第一语言展示的文本;转化所述文本的至少一部分以生成与第二客户区域相关联的第二语言的翻译后文本;存储所述翻译后文本在数据库,所述被存储的翻译后文本与所述第一客户区域和游戏改变事件相关联;接收来自第二客户区域的用于所述可视化内容的请求;基于所述第二客户区域和所述游戏改变事件获取本地化内容,其中所述被获取的本地化内容包括所述翻译后文本;和传输所述被获取的本地化内容给在所述第二客户区域的客户端设备。

在一些实施方式中,所述转化所述文本的部分包括转化达到阈值置信度分数的所述文本的子集。

在一些实施方式中,所述转化包括:生成备选数据库项池;评估所述备选数据库项池中的项从而生成参与分数;和过滤从而移除具有不达到第一阈值的参与分数的一个或者多个项。

在一些实施方式中,所述参与分数是所述翻译后文本的用户交互的度量。

在一些实施方式中,所述转化包括从所述可视化内容中单独翻译所述文本的部分。

在一些实施方式中,所述翻译后文本从所述可视化内容中单独评分。

在一些实施方式中,所述转化包括在生成所述翻译后文本之前选择备选数据库项的子集。

在一些实施方式中,所述选择所述备选数据库项的子集包括移除与攻击性内容相关联的备选数据库项。

根据本申请的另一方面,一种系统包括:在其上存储有指令的存储器;和与所述存储器耦合的处理设备,所述处理设备配置为访问所述存储器并执行所述指令,其中所述指令使得所述处理设备执行操作包括:接收与来自第一客户区域的游戏相关联的可视化内容,所述可视化内容包括在所述第一客户区域以第一语言展示的文本;转化所述文本的至少一部分以生成与第二客户区域相关联的第二语言的翻译后文本;存储所述翻译后文本在数据库,所述被存储的翻译后文本与所述第一客户区域和游戏改变事件相关联;接收来自第二客户区域的用于所述可视化内容的请求;基于所述第二客户区域和所述游戏改变事件获取本地化内容,其中所述被获取的本地化内容包括所述翻译后文本;和传输所述被获取的本地化内容给在所述第二客户区域的客户端设备。

根据本申请的另一方面,一种非临时性计算机可读介质,其上存储有指令,所述指令响应于处理设备的执行使得所述处理设备执行操作包括:接收与来自第一客户区域的游戏相关联的可视化内容,所述可视化内容包括在所述第一客户区域以第一语言展示的文本;转化所述文本以生成与第二客户区域相关联的第二语言的翻译后文本;和存储所述翻译后文本在与所述可视化内容相关联的数据库。

在一些实施方式中,所述操作还包括:接收来自所述第二客户区域的用于所述可视化内容的请求;基于所述第二客户区域获取本地化内容,其中所述被获取的本地化内容包括至少一个所述翻译后文本;和响应于所述请求传输所述被获取的本地化内容给在所述第二客户区域的客户端设备。

附图说明

图1示出了本申请实施例提供的用于动态内容的自动本地化的示例系统架构的示意图。

图2示出了本申请实施例提供的示例预处理器架构的示意图。

图3示出了本申请实施例提供的示例游戏内容和相应本地化内容的示意图。

图4示出了本申请实施例提供的用于动态内容的自动本地化的示例方法的流程示意图。

图5示出了本申请实施例提供的用于动态内容的自动本地化的另一示例方法的流程示意图。

图6示出了本申请实施例提供的示例计算设备的示意图。

具体实施方式

在下面的详细说明中,请参考附图,这些附图构成了本申请的一部分。在附图中相似的符号通常标识相似的组件,除非上下文另有规定。详细的说明书、附图和权利要求书中描述的说明性实施例并不意味着具有限制性。可以使用其他实施例,并且可以进行其他更改,但不偏离本文所述主题的精神或范围。本发明的各个方面,如本文一般描述的,并在附图中说明的,可以按照各种不同的配置来安排、替换、组合、分离和设计,所有这些都在本文中被考虑。

说明书中对“一些实施例”、“一种实施例”、“示例实施例”等的引用表明所描述的实施例可以包括特定的特征、结构或特征,但每个实施例不一定包括该特定的特征、结构或特征。此外,这些短语不一定是指相同的实施例。此外,当一个特定的特征、结构或特性被描述为与一个实施例相连接时,无论是否明确描述,该特征、结构或特性都可以在与其他实施例相关时产生效用。

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

在线游戏平台还可以允许平台的用户(开发者)创建新的游戏、角色和内容。例如,可以允许在线游戏平台的用户创建、设计和/或自定义新角色、道具或其他内容,并使其可供其他用户使用。

新的用户内容可以在与特定在线游戏相关的第一个地区或地区生成。地区或者区域可以指地理区域,如城市、州、国家、大陆等,也可以指以其他方式定义的地理区域(如主要口语或方言)。特定于地区的自定义可能存在于新用户内容中。例如,美式英语拼写可能用于美国境内的内容创建者生成的内容,而英式英语可能用于英国的内容创建者生成的内容。此外,其他定制,例如符号、表情符号、货币图标或其他文本或非文本内容项的使用,可以遵循特定于地区的文化习俗。特定于地区的自定义也可以应用于日期(例如月/日/年或日-月-年)、数字(使用逗号而不是小数点)或其他内容。如果游戏是在一个单独的地区访问或玩,新内容通常只以原始语言存在,并针对源位置进行本地化。例如,在一款游戏中,游戏目标是建立一家披萨店并出售物品,物品的价格可能会在游戏内容中以符号“$”显示,例如“$5.5”,这可能不适合在其他地方使用其他货币符号玩游戏的玩家。

游戏内容可以类似地为第一个地区或区域生成。因此,如果游戏是在一个单独的地区访问或玩,游戏内容通常存在于原始本地化中,除非游戏开发者或其他方另行翻译。

游戏平台所有者或管理员的目标可以包括新用户内容、游戏内容以及与游戏相关的任何动态内容的本地化。游戏平台运营商面临的一个技术问题是提供与游戏平台相关的游戏内容的翻译,包括动态内容,这可以帮助那些无法获得游戏内容的地区的玩家玩游戏并享受游戏。

在线游戏平台可以是庞大的,包括多种随时间变化的动态内容,以及快速生成新用户内容的用户基础。因此,能够准确翻译或本土化动态内容的游戏平台能够有效地本土化任何游戏,而不存在传统缺陷。

例如,在传统本地化中,游戏平台运营商需要在翻译的延迟之后根据静态内容进行人工翻译以进行部署。最初的翻译的延迟可能包括审查、质量控制和其他措施,以确保适当的内容通过媒体分发到其他地区。然而,在线游戏平台不断推出新内容,使得传统方法难以或无法使用。

另一种方法是使用自动翻译服务,例如可以提供翻译的翻译应用程序。此类服务的一个重要限制是,这些服务通常无法在游戏内容的背景下提供准确或可用的翻译。例如,游戏平台和在这些平台上玩的游戏通常包含字典或标准语言文本中所不包含的文本内容。这些文本内容可以包括游戏或平台特定的俚语、名词和其他术语。

其他限制涉及在生成翻译时缺乏儿童安全或儿童适合的内容。例如,不恰当的翻译往往是由于常见的短语,如在美国英语地区的短语“财宝箱”被翻译成韩语地区的“财宝胸部”。此外,一些内容提供商可能拥有特定于平台方的术语或俚语,通常很难使用传统方法进行适当的翻译。例如,俚语“obby”指的是障碍赛;“gg”表示游戏不错;“OD'er”用来识别在线约会对象;“admin”代表游戏所有者或管理员;而其他常见的俚语可能是误译,没有翻译,或者翻译时使用了不适合使用者的词语。此类文本的领域特定性质导致翻译服务无法提供翻译,或者提供的翻译很差或无法使用。

本公开通过提供一种新型的系统架构和方法来解决上述缺陷,该系统架构和方法几乎与内容创建一样快地处理和将游戏内容转换为新的区域。游戏内容可以被解析、本地化和存储,以便部署到几乎任何地区,这样从多个地区访问游戏的用户就可以获得经过本地化的动态内容,而无需等待与各自地区相关的新版本。这允许同一游戏的多个用户以各自的语言查看游戏内容。因此,同一游戏的多个用户也可能同时使用不同的语言进行游戏,例如,参与相同的游戏会话或游戏环境,并查看基于其语言环境定制的相同可视化内容。

该系统架构还可以允许游戏开发者获得翻译的内容,利用翻译服务(如游戏平台提供的翻译服务)翻译内容,操作之前翻译的内容,指导高优先级内容以不同于其他内容的速度翻译,以及确保翻译内容的质量和及时性。通过对翻译表的智能解析和存储,可以在保证高质量在线游戏体验的同时实现快速本地化。

图1示出了根据本申请实施例的示例系统架构100。图1和其它附图使用类似的参考数字来标识类似元件。参考数字后面的字母,例如“110”,表示文本专门指向具有该特定引用数字的元素。文本中没有后面字母的引用数字,如“110”,指的是附图中包含该引用数字的任何或所有元素(例如文中的“110”指的是图中的参考数字“110a”、“110b”和/或“110n”)。

系统架构100(在此也称为“系统”)包括在线游戏平台102和客户端设备110a和110b(在此通常称为“客户端设备110”)。在线游戏平台102和客户端设备110通过一个网络或多个网络耦合。

除其他外,在线游戏平台102可包括游戏服务器104、本地化服务器106(例如,专用本地化服务器,或在游戏服务器104内实现)、翻译服务器108(例如,专用翻译服务器,或在游戏服务器104内实现)、翻译服务109、本地化应用程序111、预处理器架构113、游戏内容服务114、翻译存储服务116、本地化更改队列124、本地化更改处理器126(例如,专用更改服务器,或在游戏服务器104内实现)、游戏内容数据库120和翻译数据库122。游戏内容数据库120和翻译数据库122也可称为数据存储器。客户端设备110可以包括游戏应用程序112和输入/输出(input/output,I/O)接口(例如,输入/输出设备)。输入/输出设备可以包括一个或多个麦克风、扬声器、耳机、显示设备、鼠标、键盘、游戏控制器、触摸屏、虚拟现实控制台等。

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

在一些实施方式中,对系统架构100的各种元素进行互联的网络可能包括公共网络(如因特网),私有网络(如局域网(LAN)和广域网(WAN)),有线网络(如以太网),无线网络(如802.11的网络,WiFi网络或无线局域网(WLAN)),蜂窝网络(如5g网络,长期演进(LTE)网络等),路由器、集线器、交换机、服务器电脑,或者两者的结合。

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

在一些实施方式中,在线游戏平台102和相关组件可以包括具有一个或多个计算设备的服务器(例如,云计算系统、机架服务器、服务器计算机、物理服务器集群等)。

在一些实施方式中,在线游戏服务器104可能包括一个或多个计算设备(如架装安装服务器,路由器电脑,服务器电脑,个人电脑,主机电脑,笔记本电脑,平板电脑,台式电脑等),数据存储器(如硬盘,存储器,数据库),网络,软件组件和/或硬件组件可用于在线游戏服务器104执行操作,并让用户访问在线游戏服务器104。在一些实施方式中,在线游戏服务器104可以是一个独立的系统,可以包括多个服务器,或者是另一个系统或服务器的一部分。

在线游戏服务器104还可以包括网站(如网页)或应用程序后端软件,其可用于向用户提供对在线游戏服务器104提供的内容的访问。例如,用户可以在客户端设备110上使用游戏应用程序112访问在线游戏服务器104。

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

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

在一些实施方式中,游玩可指一个或多个玩家在游戏(例如,105)中使用客户端设备(例如,110)的交互,或在客户端设备110的显示器或其他输出设备上显示交互。

在一些实施方式中,游戏105可以包括电子文件,该电子文件可以使用配置为向实体呈现游戏内容130(例如,数字媒体项目)和/或本地化内容131的软件、固件或硬件执行或加载。在一些实施方式中,游戏应用程序112可以被执行,游戏105可以在与游戏服务器104合作执行的游戏引擎连接中呈现。所述呈现可包括已使用本地化资产138进行本地化的游戏内容130。在一些实施方式中,游戏105可能有一组共同的规则或共同的目标,游戏环境也共享一组共同的规则或共同的目标。在一些实施方式中,不同的游戏可能有不同的规则或目标。

在一些实施方式中,游戏可以有一个或多个环境(在这里也称为“游戏环境”或“虚拟环境”),其中多个环境可以被链接。环境的例子可能是三维(3D)环境。游戏应用程序112的一个或多个环境在这里可以统称为“世界”或“游戏世界”或“虚拟世界”或“宇宙”。游戏世界的一个例子就是3D世界。例如,用户可以构建一个虚拟环境,该虚拟环境链接到另一个用户创建的另一个虚拟环境。虚拟游戏中的角色可以越过虚拟边界进入相邻的虚拟环境。

可以注意到,3D环境或3D世界使用图形,这些图形使用代表游戏内容的几何数据的三维表示(或至少将游戏内容呈现为3D内容,无论是否使用几何数据的3D表示)。2D环境或2D世界使用图形,使用代表游戏内容的几何数据的二维表示。

在一些实施方式中,在线游戏服务器104可以托管一个或多个游戏105,并且可以允许用户使用客户端设备110的游戏应用程序112与游戏105交互。在线游戏服务器104的用户可以玩、创建、互动或构建游戏105,与其他用户交流,和/或创建和构建对象和内容130。例如,在生成用户生成内容130时,用户可以创建角色、角色的装饰、互动游戏的一个或多个虚拟环境,或构建游戏105中使用的结构等。在一些实施方式中,用户可以与在线游戏服务器104的其他用户购买、出售或交易游戏虚拟游戏对象,例如平台内货币(例如虚拟货币)。

在一些实施方式中,在线游戏服务器104可将游戏内容130传输到使用本地化资产138呈现的游戏应用程序(例如,112)。在一些实施方式中,游戏内容130(在此也称为“内容”)可指与在线游戏服务器104或游戏应用程序相关的任何数据或软件指令(例如,游戏对象、游戏、用户信息、视频、图像、命令、媒体项目等)。在一些实施方式中,游戏内容130也可以指通过在线游戏服务器104或客户端设备110的游戏应用程序112使用、创建、共享或以其他方式描绘的对象。例如,内容130可以包括零件、模型、人物、配件、工具、武器、服装、建筑物、车辆、货币、植物群、动物群、上述部件(如建筑物的窗户)等。本地化资产138可以包括与特定地区相关联的文本或文本数据。因此,在呈现游戏内容130时,在线游戏平台102可以使用本地化资产138提供本地化游戏内容以呈现本地化内容131。

应当注意到,在线游戏服务器104托管游戏105是为了说明,而不是限制。在一些实施方式中,在线游戏服务器104可以托管一个或多个媒体项,这些媒体项可以包括从一个用户到一个或多个其他用户的通信消息。媒体项目可以包括但不限于,数字视频、数字电影、数字照片、数字音乐、音频内容、旋律、网站内容、社交媒体更新、电子书、电子杂志、数字报纸、数字音频书籍、电子期刊、网络博客、电子漫画书、软件应用程序等。在一些实施方式中,媒体项目可以是可以使用软件执行或加载的电子文件,配置为将数字媒体项呈现给实体的固件或硬件。

在一些实施方式中,游戏105可能与特定用户或特定用户群体(如私人游戏)相关联,或通过访问在线游戏服务器104(如公共游戏)广泛提供给用户。在一些实施方式中,在线游戏服务器104将一个或多个游戏105与特定用户或用户组相关联,在线游戏服务器104可以使用用户账号信息(例如,用户账号标识符,如用户名和密码)将特定用户与游戏105相关联。

在一些实施方式中、在线游戏服务器104或客户端设备110可以包括通过在线游戏平台102提供本地化内容131的游戏引擎107和游戏应用程序112。在一些实施方式中,游戏引擎107可用于游戏105的开发或执行,包括本地化内容131和游戏内容130。例如,游戏引擎107可以包括用于2D、3D、VR或AR图形的渲染引擎(“渲染器”)、物理引擎、碰撞检测引擎(和碰撞响应)、声音引擎、脚本功能、动画引擎、人工智能引擎、网络功能、流媒体功能、内存管理功能、线程功能、场景图形功能或对电影的视频支持,以及其他功能。游戏引擎107的组件可以生成帮助计算和渲染游戏105的命令(例如,渲染命令、碰撞命令、物理命令等),包括使用本地化资产138来进行本地化的内容130。在一些实施方式中,游戏应用程序112,客户端设备110,可以独立工作,与游戏引擎107合作,或两者的组合。

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

例如,用户可以在客户端设备110上玩游戏105,并且可以向在线游戏服务器104发送控制指令(例如,用户输入,如右、左、上、下、用户选择或角色位置和速度信息等)。在接收来自客户端设备110的控制指令之后,在线游戏服务器104可以基于控制指令向客户端设备110发送玩法指令(例如,参与群组玩法的角色的位置和速度信息或命令,例如渲染命令、碰撞命令等)。例如,在线游戏服务器104可以对控制指令执行一个或多个逻辑操作(例如,使用游戏引擎107)以为客户端设备110生成游玩指令。在其他情况下,在线游戏服务器104可以将一个或多个控制指令从一个客户端设备110传递到参与游戏105的其他客户端设备(例如,从客户端设备110a传递到客户端设备110b)。客户端设备110可以使用所述游玩指令并在客户端设备110的显示器上呈现所述游玩。

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

在一些实施方式中,游玩指令可指允许客户端设备110呈现游戏105(如多人游戏)和内容130或本地化内容131的游玩的指令。游玩指令可能包括一个或多个用户输入(如控制指令)、角色位置和速度信息或命令(如物理命令、渲染命令、碰撞命令等)。本地化内容131可以包括与基于游戏玩法说明呈现的角色相关的翻译文本(例如,文本的位置等)。

在一些实施方式中,在线游戏服务器104可以在数据存储器120中存储用户创建的内容130。在一些实施方式中,在线游戏服务器104维护了一个可能呈现给用户的角色目录和游戏目录。在一些实施方式中,游戏目录包括存储在在线游戏服务器104上的游戏图像。此外,用户可以从角色目录中选择一个角色(例如,由用户或其他用户创建的角色)参与所选游戏。所述角色目录包括存储在在线游戏服务器104上的角色图像。在一些实施方式中,角色目录中的一个或多个角色可能已经由用户创建或自定义。在一些实施方式中,所选的角色可能具有定义角色的一个或多个组件的角色设置。

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

在一些实施方式中,客户端设备110每个可以包括计算设备,例如个人计算机(personal computers,PC)、移动设备(如笔记本电脑、移动电话、智能手机、平板电脑或上网本计算机)、网络连接电视机、游戏机、虚拟现实(VR)设备、增强现实(AR)设备等。在一些实施方式中,客户端设备110也可以被称为“用户设备”。在一些实施方式中,一台或多台客户端设备110可以在任何时刻连接到在线游戏服务器104。可以注意到,提供的客户端设备数量为110作为说明。在一些实施方式中,可以使用任意数量的客户端设备110。

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

根据本申请的一些方面,游戏应用程序112可能是在线游戏服务器应用程序,供用户构建、创建、编辑、将内容130上传到在线游戏服务器104,以及与在线游戏服务器104交互(例如,玩由在线游戏服务器104托管的游戏105)。这样,游戏应用程序可以由在线游戏服务器104提供给客户端设备110。在另一个例子中,游戏应用程序可能是从服务器下载的应用程序。

在一些实施方式中,用户可以通过游戏应用程序112登录到网络游戏服务器104。用户可以通过提供用户账号信息(例如用户名和密码)来访问用户账号,其中用户账号与一个或多个可参与在线游戏服务器104的一个或多个游戏105的角色相关联。在一些实施方式中,通过适当的凭证,游戏开发者可以访问游戏虚拟游戏对象,如平台内货币(例如,虚拟货币)、角色、特殊能力、配件和/或其他用户拥有或与之相关的内容130。

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

在一些实施方式中,在线游戏服务器平台可以包括游戏内容服务114。在一些实施方式中,游戏内容服务114可以是允许在线游戏服务器104于在线游戏平台102内提供内容130以进行本地化的系统、应用程序或模块。在一些实施方式中,游戏内容服务114可以与图4和图5所示的流程图连接执行下面所述的一种或多种操作。

一般地,游戏内容服务114通过本地化应用程序111和预处理器架构113与游戏服务器104进行操作地通信。本地化应用程序111可以提供给游戏服务器104,以便内容130可以传输给预处理器架构113。在一些实施方式中、本地化应用程序111和预处理器架构113可以通过游戏服务器104执行。

预处理器架构113可将内容130转换为作为可视化内容132的游戏内容的一部分和作为文本内容133的游戏内容的一部分。在一些实施方式中,所述可视化内容132可能还包括文本内容。例如,如果本地化应用程序111指示预处理器架构忽略翻译特定的游戏内容130,则该游戏内容可存储为数据存储器120中的未翻译的可视化内容132。

在一些实施方式中,游戏内容服务114可指示所述可视化内容132与游戏改变事件136相关联。所述游戏改变事件136可能是涉及特定内容的显示或呈现的触发器或事件130。在其他实施方式中,所述游戏改变事件136可以被忽略。

游戏内容服务114还可以将文本内容133定向到翻译服务109。翻译服务109可以包括机器翻译服务、手动翻译接口或其他翻译组件,配置为将至少一部分文本内容133翻译为译文134。译文134可以是从第一区域的第一语言(例如,客户区域A)到与第二区域相关联的第二语言(例如,客户区域B)。在一些实施方式中,译文134可以是从第一语言到与多个区域相关的多个第二语言。

翻译服务109可基于特定区域应用任何特定于区域的语言协议。例如,儿童安全或适合儿童内容的指南、特定于区域的俚语指南和/或其他适当的指南可构成用于翻译服务109的协议。协议可以包括基于用户上下文(例如,用户的区域或地区)、用户简介(例如,用户的年龄)和/或用户设置来阻止内容的内容评级。因此,翻译服务109可以应用该协议以确保向用户呈现正确的内容。

译文134可以由翻译存储服务116处理,并定向存储在数据存储器122。在一些实施方式中,译文134也涉及所述游戏改变事件136。在其他实施方式中,所述游戏改变事件136可以被忽略。

在执行游戏105期间,本地化更改队列124可能会接受来自游戏应用程序112的指令,以在客户端设备110上呈现内容。为了响应内容请求,本地化更改队列124可以检索本地化资产138。本地化资产138和内容130可以由本地化更改处理器126处理并呈现为本地化内容131。在一些实施方式中,游戏服务器104可以独立或与本地化更改处理器126一起对内容进行本地化。

图2是本申请实施例提供的示例预处理器架构113的示意图。在一些实施方式中,预处理器架构113可以是在本地化服务器106或另一个处理设备上实现和/或执行的软件服务。在一些实施方式中,所述与预处理体系结构113有关的一个或多个子部分可以在硬件中实现。

在一些实施方式中,该预处理器架构113可包括配置为从游戏内容130提取可视化内容132和文本内容133的转换模块202。应当注意的是,转换模块202还可以控制所提取的可视化内容132和文本内容133的计算和转换,以便可以以任何顺序对其进行处理。此外,转换模块202还可以直接转换为任何合适的和/或单独的处理管道,包括串行或并行处理体系结构。该转换可用于将数据存储在数据存储器214中。

一般地,预处理器架构113包括通过评估器引擎204a、204b和204c(在这里通常称为评估器引擎204)形成的预处理管道。评估器引擎204被配置为识别各种质量的文本,这样只有满足翻译标准的文本才存储于在线游戏平台102中。翻译标准可能包括但不限于在游戏中取得进展的必要内容、在游戏中实现目标的必要内容、在游戏中前进的必要内容、理解游戏某部分内容的必要内容以及其他适当的标准。例如,评审器210可以评估通过评估器204提供的文本以确定游戏内容130是否已由授权来源提供。评审器210也可决定游戏内容130对游戏105是否重要。例如,特定于少于阈值数量的用户的内容(例如,用户宠物的名字)、不太可能可翻译的内容(例如,密码)、短暂文本(例如,聊天消息)、其他动态内容和/或其他特定文本可能被确定为不重要。通常,评估器引擎204可以连续运行,并对临时数据212进行排序,以创建任意数量的已解析文本字符串。所述解析后的文本字符串可以形成数据库项,用于存储于在线游戏平台102中。

在一些实施方式中,评估器204被部署用于生成文本的备选数据库项池以用于存储在数据存储器122中。评审器210可以被配置为选择所述备选数据库项的子集以生成剩余数据库项池。评审器210可以评估所述剩余数据库项池中的项以生成重要性排序并且过滤掉重要性排序没有达到第一阈值的项。达到第一阈值的项被作为文本内容133来传输用于翻译和存储。

重要性排序的第一阈值可能基于许多指标,包括特定于内容和/或特定于平台的指标。根据指标的强度,将这些指标组合成评估器或转换引擎,例如,根据看到相同内容的独特用户数量、基于游戏会话和/或具有该内容的游戏实例等来确定得分。评估器204可以对每个指标施加权重,并确定评价者自身的某些状态,例如,批准、不确定、拒绝等。评审器210进一步组合评估器204响应以生成第一个阈值的值。

在一些实施方式中,所述重要性排序值是文本数据在客户区域,例如客户区域B,被准确展示的重要性的度量。在一些实施方式中,所述重要性排序值是基于浏览游戏内容130的用户的数量,与游戏内容130相关联的会话的数量,或者游戏内容130的源。

在一些实施方式中,所述重要性排序值基于预先配置或预设阈值的手动操作方案,例如游戏年龄(例如,特定游戏的发布日期)、游戏受欢迎程度(例如,限制计算资源的更高阈值)、玩家数量和其他适当的标准。例如,一款新游戏可能只有少数用户最初看到游戏内容;相应地,这种游戏可以选择较低的阈值。另一个例子是,受欢迎的游戏可能有更高的阈值设置。为指标设置阈值和/或权重可以进一步的基于每款游戏的玩家数量百分比。另一个可用的指标是,与游戏相关的开发者是新开发者(他们之前在平台上几乎没有任何内容)或者知名开发者。阈值和/或权重的选择使得游戏内容的自动转换能够以适合游戏的速率发生。例如,如果游戏越来越受欢迎,通过选择适当的阈值和/或权重,翻译的执行速度可能会比其他游戏快。

在一些实施方式中,所述重要性排序值基于其他因素和/或人工操作或机器训练。此外,在其他实施方式中,所述重要性排序值可能会被规范化,以便在翻译服务108翻译之前使用布尔表达式过滤掉不佳的备选数据库项。

通过预处理器架构113,可以对游戏内容130进行预处理,以在游戏内容服务114处理之前选择好的备选(或等效地,删除差的备选)进行翻译。各种形式的游戏内容130可以于在线游戏平台102中进行本地化处理。游戏内容130可以包括可视化数据132、文本133和其他数据。在翻译文本133的至少一部分后,在线游戏平台102能够呈现本地化内容131以传输到一个或多个客户端地区。

图3示出了本申请实施例提供的示例游戏内容302和相应本地化内容304的示意图。如图3所示,游戏内容302可以包括可视化数据321和文本数据323。此外,由于游戏内容302中的文本数据323是第一语言,游戏内容302的维度D1可以与第一语言的语言特征相关联。

本地化内容304还可以包括可视化数据321和翻译后文本数据343。此外,由于本地化内容304包括第二语言的翻译后文本数据343,本地化内容304的维度D2基于第二语言的语言特征可能不同于D1。在图3所示的示例中,D2大于D3以容纳长于文本数据323的所述翻译后文本数据343。因此,由于在线游戏平台102主动使用本地化资产138和游戏内容130呈现本地化内容131,无论第一语言和第二语言之间的特征差异,文本数据343都可能准确地显示在第二客户区域上。

如图2所示,本地化可能涉及扩大外部矩形直到它足以适合翻译的单词。其他调整可以包括,例如,从可用的翻译中选择最接近维度D1的单词,自动缩放文本大小(例如,根据文本数据的字长或字宽与所述翻译后文本数据之间的差异减少或增加大小,换行,文本截断,选择与源文本数据(323)检测到的字体/颜色/其他视觉方面匹配的目标字体和/或适合维度D1,执行重定向操作(例如,根据内容特征如背景对比前景、对象标识等来调整可视化内容),或者将这些不同的技术结合起来。通过这种方式,在线游戏平台102克服了实时翻译的许多技术缺陷,如定位不当、文本大小调整、可见性和其他问题。本地化内容时可以做出的具体调整可以作为选项提供给与游戏内容相关的开发人员,这样开发人员就可以控制游戏内容本地化时所做的调整。

下面参照图4和图5详细描述了包括网络游戏平台102在内的系统架构100的操作方法。

图4示出了本申请实施例提供的用于动态内容的自动本地化的示例方法400的流程示意图。方法400从块402开始。在块402,接收到与来自第一客户区域的游戏相关联的可视化内容。在某些方面,所述可视化内容包括在所述第一客户区域以第一语言展示的文本。此外,文本可能部分地由第一语言表示,部分地由其他语言表示。相应地,在不同的实施方式中,可以按照如下所述的处理整个文本或小于整个文本的部分文本。此外,根据其他方面,文本可以部分地由第一语言的适当使用来表示,部分地由俗语或常用语来表示。因此,可以进一步解析文本,以确定翻译中可能被省略的部分。

接收到的可视化内容(如图1中的内容130)可以被处理以识别包含文本的任何部分。例如,在游戏105中,内容130可以包括在其上呈现的一面或多面上的文本的路标或建筑物。游戏内容服务114可以识别并提取文本。在一些实施方式中,可能会将接收到的内容完整副本存储在数据存储器120上,以便快速服务所述第一客户区域。在其他实施方式中,缺少部分或全部文本的内容130的部分呈现可以存储在数据存储器120。

在一些实施方式中,游戏105可以包括一个或多个游戏会话。例如,游戏引擎107和/或游戏服务器104可以允许同一游戏105的多个会话,每个会话都有自己的环境(例如,5个玩家可以一起玩披萨店游戏的会话,而另外的3个玩家可以玩同一游戏的另一个会话)。这两个游戏会话中开发者提供的内容是相同的,但虚拟角色、用户生成内容和玩家的其他内容是特定的,环境也会根据各自玩家的行动而有所不同(例如商店和披萨菜单也会有所不同)。

此外,“区域”与单个用户或客户端设备110相关联,并且在同一个“游戏会话”中,用户将或应该接收到游戏内容的本地化版本(例如,如果美国人、巴西人和德国人都在同一个会话中,游戏内容将以英语、葡萄牙语和德语呈现;或其他此类内容本地化)。相应地,与不同游戏会话相关的不同内容也可以按照本文所述进行处理和翻译。

所接收的可视化内容可以是内容130,包括参照图1所描述的代表性视觉部分和文本部分。有代表性的视觉部分和文本部分也可以通过预处理分离。例如,预处理体系结构113可以在游戏内容服务114处理之前分离文本的部分或全部。此外,预处理体系结构113可以执行与解析、排序和过滤相关的其他功能,如下所述。块402后面可能跟着块404。

在块404,差的备选项被过滤。在一些实施方式中,预处理架构113可以对接收到的可视化内容进行预处理,根据文本和所述可视化内容创建备选数据库项。在一些实施方式中,所述备选数据库项表示接收到的用于存储在数据存储器120中的第一语言的内容。所述备选数据库项可以根据任何合适的组织方案进行组织,包括图像数据的散列。所述备选数据库项可以在图2所示的流水线体系结构中处理。

预处理模块113可以进一步选择所述备选数据库项的子集以创建剩余数据库项池。备选数据库项的子集的删除可以通过任何过滤条件来实现。

根据某些实施方式,过滤标准可能包括但不限于基于以下条件进行过滤:攻击性内容、口语化内容、委婉语、剥削性内容、来自屏蔽源的内容、来自未经授权源的内容、来自新用户或非常新创建的用户帐户的内容以及其他适当的标准。块404之后可能会有块406。

在块406,备选项被评估用于翻译排序。在一些实施方式中,评估项可以包括评估所述剩余数据库项池中的项以生成排序。

在一些实施方式中,排序是任何合适的排序,通过其来确定是否应该翻译文本的特定部分。排序可能是重要性排序,信心排序,参与排序,或其他合适的排序。在一些实施方式中,重要性排序是衡量文本数据在第二个或其他客户端地区准确表示的重要性的指标。根据一些实施方式,置信度排序是一种与翻译文本相关的必要性水平的排序。必要性的程度代表了将文本翻译为本地化的置信度。这与那些对将要翻译的文本的置信度较低或没有置信度的文本相比较。根据某些实施方式,参与排序是指备选翻译将在第二个或其他地区进一步或增加游戏参与的排序。

在评估项之后,预处理体系结构113还可以实现过滤以从所述剩余数据库项池中移除具有不满足第一阈值的排序(例如重要性排序)的项。一般来说,游戏开发者可以通过分析与游戏105的参与相关的分析和参数或其他质量参数来选择第一阈值。第一阈值可以在特定游戏的整个游戏历史中改变,并且可以根据与游戏交互的用户的类型或年龄而不同。块406之后可能会有块408块。

在块408,文本被转换为在块408生成与第二客户区域相关联的第二语言的翻译后文本。例如,翻译服务109可以翻译块408中的部分或全部文本。在一些实施方式中,游戏开发者可以通过访问在线游戏平台102翻译或修改翻译。

在一些实施方式中,只能翻译部分文本。要翻译的文本部分可能包括正确语法的文本部分(例如,如果使用了冒犯性或语法不正确的语言),第一语言的文本的部分(例如,当使用多种语言时),和/或以其他方式排列重要性的文本部分。块408之后可能会有块410。

在块410,所述翻译后文本是存储在数据库中,所述被存储的翻译后文本与所述可视化内容相关联。在一些实施方式中,所述翻译后文本134存储在翻译数据库122中。在一些实施方式中,所述翻译后文本与所述可视化内容132分开存储。通过这种方式,与存储两种或多种语言的完整翻译和呈现项目的传统系统相比,在线游戏平台102的计算和存储效率得到了提高。

此外,在一些实施方式中,翻译表可以由方法400的先前迭代中翻译的文本字符串形成。例如,评估器204可以检查数据库214中的数据,以识别相似的备选文本字符串并执行分割操作。此外,评估器204还可以执行其他类似但不充分的字符串的连接操作。此外,在某些翻译操作中,文本的某些部分可能会被完全忽略。因此,可以保持相对紧凑的翻译表。在这些方案和实现中,可以从翻译表检索文本的部分,并将其连接以形成完全翻译的短语,以呈现本地化内容131。在这种情况下,限制或减少与游戏开发者的互动是必要的,从而实现几乎完全自动的游戏本地化。

利用存储在翻译数据库122中的数据,在线游戏平台102可以通过预处理器113快速处理新生成的游戏内容130,识别并过滤已经与翻译相关联的文本,根据一个或多个排名(例如,重要性、置信度、粘性)翻译必要的文本,并将可视化内容132与游戏改变事件或游戏105的另一个方面相关联。然后,可以根据第二客户区域的用户请求快速而准确地呈现本地化的内容,如下所述。

虽然图4显示了5个块402至410,但在不同的实施方式中,可以省略一个或多个块,并行执行,或与其他块组合。在一些实施方式中,块402至410中的一个或多个可以被分割成多个块,并且/或额外的块可以作为方法的一部分执行。例如,可以省略在一些实施方式中的块406,以便在过滤和翻译后保留的所有项。

此外,块402至410可以按照与上述不同的顺序执行(或重复),并且/或可以省略一个或多个步骤。例如,块406可以被执行多次,例如,在创建一个紧凑的翻译表(例如,在一个或多个游戏会话中)中计算多个文本字符串或同一整体文本字符串的多个子字符串。此外,块408可以被执行多次,例如,翻译多个字符串以创建紧凑的翻译表。以这种方式,可以重复方法400的部分,直到使用存储在平台中的数据,通过翻译表,游戏会话的所有部分都被适当翻译或确认能够翻译为止。在一些实施方式中,只有文本的子集可以翻译,一些全局内容对翻译文本并不重要。

图5示出了本申请实施例提供的用于动态内容的自动本地化的另一示例方法500的流程示意图。方法500,类似于方法400,可以通过游戏内容服务114和/或在线游戏平台102的其他部分来执行。

方法500可以从块502开始。在块502,可以从第二客户区域接收可视化内容的请求。对可视化内容的请求可以是由客户端设备110上的游戏应用程序112生成的请求。所述请求可以包括与游戏105相关的指令,以便游戏服务器104可以识别存储在数据库120中的一个或多个内容。块506可以在块502之后。

在块506,可能会收到与请求相关的游戏改变事件。应当注意的是,根据某些实施方式,游戏改变事件可能会被省略。但是,如果游戏改变事件是集成的,所述游戏改变事件可以用于从数据库120和122中快速定位游戏内容以进行本地化。

如本申请所用,游戏改变事件136可包括与在游戏105中呈现特定游戏内容相关的任何形式的触发事件。例如,但不受限制,触发事件可以包括角色或角色通过航路点的移动,整个游戏中支线任务或迷你游戏的完成,游戏中角色或角色的方向变化,游戏中道具或内容的获取,游戏中游戏内库存或状态屏幕的访问,游戏中对象或内容的操作,以及游戏中其他类似事件。其他触发事件包括,但不限于,在游戏中购买道具,在游戏中交易道具,在游戏中打开盒子或仓库,以及其他类似的游戏事件。此外,触发事件还可以包括与游戏的真实互动,如改变角色或角色,退出游戏,重置游戏和其他类似事件。应该理解的是,上述例子可能不代表所有形式的触发器和/或触发事件,因此不应该被解释为所有适当的触发器的详尽列表。

其他触发器可以由用户、客户端和游戏开发人员在不脱离本公开的范围的情况下实现。还可以向开发人员提供控件来控制翻译的使用,例如通过API。例如,API可以使开发人员通过调用获取特定内容的翻译。块508可以在块506之后。

在块508,本地化内容可以基于所述第二客户区域和所述游戏改变事件来呈现。在一些实施方式中,当游戏改变事件驱动内容交付到客户端设备时,本地化更改队列124可以检索可视化内容132和译文134以创建本地化资产138。本地化资产138基于所述第二客户区域、语言和其他与请求相关的客户端属性。此外,所述游戏改变事件136可以确定数据库120和122中的索引,从中快速检索本地化数据。此后或基本上同时,本地化更改处理器可以从本地化更改队列中获取本地化资产138并呈现本地化内容131。

在一些实施方式中,当游戏改变事件没有驱动本地化内容的交付时,本地化更改处理器126可以利用接收到的内容请求和当前游戏105来确定从数据库120检索哪个可视化内容132。类似地,可以使用所述第二客户区域来确定来自翻译数据库122的存储的翻译树的哪个部分是呈现本地化内容131所必需的。这样,本地化更改处理器126可以基于所接收的内容请求呈现本地化内容131。块510可能在块508之后。

在块510块,本地化的内容可以传输到所述第二客户区域上的客户端设备。本地化更改处理器可以将本地化内容131传递给游戏服务器104以分发给一个或多个客户端设备。此外,本地化内容131可以本地化到多个地区,从而为多个地区提供适当的本地化内容。

在一些实施方式中,游戏105可以包括一个或多个游戏会话。例如,游戏引擎107和/或游戏服务器104可以允许同一游戏105的多个会话,每个会话都有自己的环境(例如,5个玩家可以一起玩披萨店游戏的一个会话,而单独的3个玩家可以玩同一游戏的另一个会话)。这两个游戏会话中开发者提供的内容是相同的,但虚拟角色、用户生成的内容和玩家的其他内容是特定的,环境也会根据各自玩家的行动而有所不同(例如商店和披萨菜单也会有所不同)。

此外,“区域”与单个用户或客户端设备110相关联,在同一个“游戏会话”中,用户将或应该接收到游戏内容的本地化版本(例如,如果美国人、巴西人和德国人都在同一个会话中,游戏内容将以英语、葡萄牙语和德语呈现;或其他此类内容本地化)。相应地,与不同游戏会话相关联的不同语言也可以按照本文所述进行处理和分发。

块502至510可以按照与上述不同的顺序执行(或重复),并且/或可以省略一个或多个步骤。例如,块508可以执行多次,例如,渲染多个本地化资产(例如,在一个或多个游戏会话中)。以这种方式,可以重复方法500的部分,直到使用存储在平台中的数据为客户端地区适当地呈现游戏会话的所有部分。在一些实施方式中,只有资产的子集可以本地化,而一些全局资产对于翻译文本并不重要。

图6示出了本申请实施例提供的示例计算设备600的示意图。在一个示例中,设备600可用于实现计算机/客户端设备(例如图1中的110),并执行本文所述的适当方法实现。计算设备600可以是任何合适的计算机系统、服务器或其他电子或硬件设备。例如,计算设备600可以是大型计算机、台式计算机、工作站、便携式计算机或电子设备(便携式设备、移动设备、手机、智能手机、平板电脑、电视、电视机顶盒、个人数字助理(personal digitalassistant,PDA)、媒体播放器、游戏设备、可穿戴设备等)。在一些实施方式中,设备600包括处理器602、内存604、输入/输出(I/O)接口606和音频/视频输入/输出设备614。

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

存储器604通常提供在设备600中供处理器602访问,并且可以是任何合适的处理器可读存储介质,例如,随机存取存储器(RAM)、只读存储器(ROM)、电可擦只读存储器(EEPROM)、闪存等,适合存储由处理器执行的指令,并且与处理器602分开放置和/或与之集成。内存604可存储由处理器602在服务器设备600上运行的软件,包括操作系统608、一个或多个应用程序610,例如,翻译应用程序和数据库612。在一些实施方式中,应用程序610可以包括使处理器602能够执行本文所述的功能(或控制的功能)的指令,例如,关于图4和图5所述的部分或全部方法。

例如,应用程序610可以包括翻译应用程序和/或数据库模块612,如本文所述,其可以为在线游戏内容服务器(例如,104)提供动态内容的本地化。内存604中的任何软件都可以存储在任何其他合适的存储位置或计算机可读介质上。此外,存储器604(和/或其他连接的存储设备)可以存储用于本文所述特性的指令和数据。存储器604和任何其他类型的存储(磁盘、光盘、磁带或其他有形介质)可以被认为是“存储器”或“存储设备”。

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

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

了便于说明,图6显示了处理器602、内存604、I/O接口606和软件块608和610各一个块。这些块可以代表一个或多个处理器或处理电路、操作系统、内存、I/O接口、应用程序和/或软件引擎。在其他实现中,设备600可以不具有所示的所有组件和/或可以具有包括其他类型元素的其他元素,而不是或除此处所示的元素之外的其他元素。虽然在线游戏服务器104被描述为执行本文中所述在一些实施方式中的操作,但在线游戏服务器104或类似系统的任何合适组件或组件组合,或与此类系统相关联的任何合适处理器或多个处理器,都可以执行所述操作。

用户设备还可以实现和/或与本文所述的特征一起使用。示例用户设备可以是计算机设备,包括一些与设备600类似的组件,例如处理器602、内存604和I/O接口606。可以在内存中提供适合客户机设备的操作系统、软件和应用程序,并由处理器使用。客户端设备的I/O接口可以连接到网络通信设备,以及输入和输出设备,例如,用于捕获声音的麦克风,用于捕获图像或视频的摄像机,用于捕获用户输入的鼠标,用于识别用户手势的手势设备,用于检测用户输入的触摸屏,用于输出声音的音频扬声器设备,用于输出图像或视频的显示设备,或其他输出设备。例如,音频/视频输入/输出设备614内的显示设备可以连接到(或包含在)设备600以显示本文所述的图像预处理和后处理,其中该显示设备可以包括任何合适的显示设备,例如,LCD、LED或等离子显示屏、CRT、电视、显示器、触摸屏、3D显示屏、投影仪或其他可视显示设备。一些实现可以提供音频输出设备,例如说文本的语音输出或合成。

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

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

虽然已经就其特定实现描述了描述,但这些特定实现只是说明性的,而不是限制性的。示例中说明的概念可以应用于其他示例和实现。

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

技术分类

06120115628428