CN107302707A - 场景动画的播放方法、装置及系统 - Google Patents
场景动画的播放方法、装置及系统 Download PDFInfo
- Publication number
- CN107302707A CN107302707A CN201710355474.1A CN201710355474A CN107302707A CN 107302707 A CN107302707 A CN 107302707A CN 201710355474 A CN201710355474 A CN 201710355474A CN 107302707 A CN107302707 A CN 107302707A
- Authority
- CN
- China
- Prior art keywords
- time
- server
- account
- client
- scene animation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/49—Saving the game status; Pausing or ending the game
- A63F13/493—Resuming a game, e.g. after pausing, malfunction or power failure
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2408—Monitoring of the upstream path of the transmission network, e.g. client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25875—Management of end-user data involving end-user authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
- H04N21/43072—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4781—Games
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/6009—Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Information Transfer Between Computers (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种场景动画的播放方法、装置及系统。其中,该方法包括:获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;根据场景数据判断是否达到播放目标场景动画的预定触发条件;在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。本发明解决了相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种场景动画的播放方法、装置及系统。
背景技术
目前,为了提高用户对应用的使用体验,在应用中会播放场景动画,例如,在闯关类游戏中会在游戏剧情发展的关键阶段使用场景动画串接游戏前后剧情,或为关键人物出场做铺垫,以提高游戏的感染力。现有的多人闯关类游戏中一般直接使用传统的场景动画播放方案,即场景动画播放的触发和控制均是由客户端决定。但是,在多人合作闯关类游戏中,每个玩家所使用的设备环境是不同的,其加入关卡的时间也是不确定的,因此容易出现不同玩家的设备上游戏场景动画的播放进度不一致的问题。特别是在移动终端上,由于网络延迟和网络抖动等因素,场景动画的播放进度不一致的问题会更加明显,甚至可能出现部分玩家已经完成场景动画的展示,进入核心战斗阶段,而另一部分玩家还在观看场景动画的现象,严重影响了玩家的合作闯关的游戏体验。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种场景动画的播放方法、装置及系统,以至少解决相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题。
根据本发明实施例的一个方面,提供了一种场景动画的播放方法,包括:获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;根据场景数据判断是否达到播放目标场景动画的预定触发条件;在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。
根据本发明实施例的另一方面,还提供了一种场景动画的播放方法,包括:将第一账号对应的场景数据导出给服务器,其中,场景数据为第一账号登录客户端后所产生的数据;接收服务器返回的控制消息,其中,服务器用于根据场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到预定触发条件的情况下返回控制消息,控制消息用于指示播放目标场景动画;按照控制消息播放目标场景动画。
根据本发明实施例的另一方面,还提供了一种场景动画的播放装置,包括:获取单元,用于获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;判断单元,用于根据场景数据判断是否达到播放目标场景动画的预定触发条件;第一发送单元,用于在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。
根据本发明实施例的另一方面,还提供了一种场景动画的播放装置,包括:发送单元,用于将第一账号对应的场景数据导出给服务器,其中,场景数据为第一账号登录客户端后所产生的数据;接收单元,用于接收服务器返回的控制消息,其中,服务器用于根据场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到预定触发条件的情况下返回控制消息,控制消息用于指示播放目标场景动画;播放单元,用于按照控制消息播放目标场景动画。
根据本发明实施例的另一方面,还提供了一种场景动画的播放系统,包括:服务器和多个客户端;其中,服务器用于执行本发明上述实施例中的任意一种场景动画的播放方法,多个客户端中的每个客户端用于本发明上述实施例中的场景动画的播放方法。
在本发明实施例中,采用服务器统一控制场景动画播放的方式,通过获取多个客户端发送的场景数据,并根据场景数据判断是否达到播放目标场景动画的预定触发条件,在达到预定触发条件的情况下向所有的客户端发送控制消息,以指示所有的客户端同步播放目标场景动画,达到了保证应用的场景动画的播放进度同步的目的,进而解决了相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题,从而提高了用户对应用的使用体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的场景动画的播放方法的硬件环境的示意图;
图2是根据本发明实施例的一种可选的场景动画的播放系统的架构示意图;
图3是根据本发明实施例1的一种可选的场景动画的播放方法的流程图;
图4是根据本发明优选实施例的场景动画同步交互流程的时序图;
图5是根据本发明优选实施例的一种可选的逻辑对时的示意图;
图6是根据本发明优选实施例的另一种可选的逻辑对时的示意图;
图7是根据本发明实施例2的一种可选的场景动画的播放方法的流程图;
图8是根据本发明实施例3的一种可选的场景动画的播放方法的流程图;
图9是根据本发明实施例4的一种可选的场景动画的播放装置的示意图;
图10是根据本发明实施例5的一种可选的场景动画的播放装置的示意图;以及
图11是根据本发明实施例的一种终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本发明实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
场景动画:游戏过程中用于承接剧情转变或突出关键事件而播放的动画,主要包括角色特定状态或动作的特写,预设的剧情对白,突出的场景变化和关键的剧情事件等。
实施例1
根据本发明实施例,提供了一种场景动画的播放方法的方法实施例。
可选地,在本实施例中,上述场景动画的播放方法可以应用于如图1所示的由服务器102和终端104所构成的硬件环境中。如图1所示,服务器102通过网络与终端104进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端104并不限定于PC、手机、平板电脑等。本发明实施例的场景动画的播放方法可以由服务器102来执行,也可以由终端104来执行,还可以是由服务器102和终端104共同执行。其中,终端104执行本发明实施例的场景动画的播放方法也可以是由安装在其上的客户端来执行。
需要说明的是,该实施例1中的场景动画的播放方法主要由服务器102和终端104共同执行。在对本发明实施例的场景动画的播放方法的具体流程进行介绍至之前,首先对执行该场景动画的播放方法的场景动画的播放系统的架构进行说明。
本发明实施例中的场景动画的播放系统可以包括服务器和多个客户端,其中,服务器可以是一个服务器或者多个服务器组成的服务器集群,客户端可以是安装在任意终端设备上的客户端,终端设备可以包括但并不限于PC、手机、平板电脑等。需要说明的是,服务器可以与每个客户端通信连接,利用该通信连接可以实现服务器与客户端之间的数据交互。
需要说明的是,本发明实施例中的场景动画的播放系统可以采用Dedicated-Server(DS)式的网络同步架构,其特征主要包括如下两点:
(1)服务器上运行完整的应用逻辑;
(2)应用状态以服务器数据为权威,客户端只根据这些服务器数据做表现模拟。
下面将以以Unity游戏引擎为基础的移动游戏应用为例对本发明实施例中的场景动画的播放系统的DS架构进行说明。
图2是根据本发明实施例的一种可选的场景动画的播放系统的架构示意图,图2中仅示出系统包括服务器和一个客户端的情形,如图2所示,客户端直接使用Unity引擎进行开发,服务器则选用与Unity底层一致的PhysX物理引擎和Recast Navigation导航网格,保证两边物理算法的一致性。客户端的场景碰撞数据与关卡逻辑数据可以通过自定义工具导出到服务器,从而保证双方物理环境和游戏配置一致。服务器依赖这些数据自主运行游戏逻辑,例如进行移动运算和战斗计算等,并通过UDP网络快速传输层下发数据驱动所有客户端的游戏流程。
在上述场景动画的播放系统中所执行的场景动画的播放方法的具体流程可以如图3所示,其中,图3中仅示出了服务器与多个客户端中的其中一个客户端的具体交互流程,该流程具体包括以下步骤:
步骤S301,将客户端的场景数据导出给服务器。
在上述步骤S301中,用户登录客户端所使用的账号可以为第一账号,第一账号登录客户端后,在客户端运行过程中可以产生数据,该数据即为场景数据。例如,用户使用游戏账号登录游戏应用客户端之后,在游戏过程中所产生的实时数据,例如账号等级、账号对应的游戏金币、账号当前所在的位置等数据,这些数据被统称为场景数据。
需要说明的是,客户端的场景数据可以通过自定义工具导出至服务器中,同理,对于场景动画的播放系统中的每个客户端的场景数据均可以导出给服务器。此处需要说明的是,每个客户端对应的账号可以不同。
还需要说明的是,在将客户端的场景数据导出至服务器同时,本发明实施例还可以将预先配置好的场景碰撞数据以及关卡逻辑数据等数据通过自定义工具导出给服务器,以便于服务器可以根据实时的场景数据和预先配置好的场景碰撞数据以及关卡逻辑数据等数据准确判断是否达到播放目标场景动画的预定触发条件。
步骤S302,服务器根据场景数据判断是否达到播放目标场景动画的预定触发条件。
在上述步骤S302中,目标场景动画为与场景数据相匹配的场景动画,本发明实施例可以根据实际需求为应用中的不同场景分别配置相应的场景动画,服务器在接收到客户端导出的实时的场景数据和预先配置好的场景碰撞数据以及关卡逻辑数据等数据之后,可以首先确定与其对应的场景动画为目标场景动画,然后在根据实时的场景数据和预先配置好的场景碰撞数据以及关卡逻辑数据等数据判断是否达到播放该目标场景动画的预定触发条件。此处需要说明的是,播放目标场景动画的预定触发条件可以为根据实际需求预先设定好的条件。作为一种可选的实施例,本发明实施例中的预定触发条件可以包括以下至少之一:
第一账号对应的事件对象进入目标区域;
第一账号对应的事件对象在目标区域的停留时间大于预定时间;
第一账号完成目标任务;
第一账号的属性值超过预定阈值,其中,属性值包括以下至少之一:账号等级、账号登录时间、账号对应的事件资源数量。
针对上述所列举的预定触发条件,需要说明的是,第一账号对应的事件对象可以为在客户端运行过程中第一账号对应的虚拟的事件对象,例如,第一账号对应的事件对象可以为游戏中的角色人物。目标区域可以为任意指定的区域;目标任务可以为任意指定的任务;预定时间和预定阈值可以根据实际需求设定,此处不做具体限定。还需要说明的是,本发明实施例中的预定触发条件还可以包括其他条件,此处不再一一举例说明。
还需要说明的是,服务器中可以预先存储有预定触发条件,且播放每个场景动画对应的预定触发条件可以不同,服务器还可以存储有场景动画与播放该场景动画的预定触发条件的对应关系,以便于在接收到场景数据之后,可以根据该对应关系确定该场景数据对应的预定触发条件,然后再根据实时的场景数据和预先配置好的场景碰撞数据以及关卡逻辑数据等数据判断是否达到该预定触发条件。
步骤S303,当服务器判断出在达到播放目标场景动画的预定触发条件的情况下,服务器可以向客户端发送控制消息。
在上述步骤S303中,当服务器判断出已经达到了播放目标场景动画的预定触发条件时,服务器可以立即触发该目标场景动画的播放事件,并向所有的客户端发送一个控制消息,其中,该控制消息可以用于指示客户端播放目标场景动画,而且该控制消息中可以携带有指示开始播放该目标场景动画的服务器时间。此处需要说明的是,控制消息中携带的服务器时间为服务器的本地时间,由于网络因素各个客户端的本地时间与服务器的本地时间可能并不一致,或者各个客户端的本地时间可能并不一致,本发明实施例的场景动画的播放方法为基于逻辑时间对齐的场景动画同步播放方案,也就是说,通过由服务器统一控制场景动画的播放,使得各个客户端按照服务器时间同步播放场景动画。
步骤S304,客户端接收服务器发送的控制消息,并按照该控制消息播放目标场景动画。
在上述步骤S304中,各个客户端在接收到服务器发送的控制消息之后,可以触发播放目标场景动画,但是,由于客户端与服务器的时间不一致,且控制消息的传输会有延时,为了保证所有的客户端中目标场景动画的播放进度一致,各个客户端需要按照服务器时间播放目标场景动画,且各个客户端从接收到控制消息之后并不一定均是从目标场景动画的起始播放时刻开始播放的。
下面将以一个客户端为例具体说明在接收到服务器发送的控制消息之后,按照该控制消息播放目标场景动画的具体过程,而对于其他客户端播放目标场景动画的过程与该过程相同。具体地,该客户端在接收到控制消息之后可以执行以下步骤:
步骤S3041,根据控制消息中携带的服务器时间确定该服务器时间对应的客户端时间。
需要说明的是,客户端在接收到控制消息之后,可以从控制消息中解析得到指示开始播放目标场景动画的服务器时间,由于客户端与服务器的本地时间不一致,客户端首先需要按照服务器时间进行逻辑对时,以确定该服务器时间对应的客户端时间,其中,客户端时间为该客户端的本地时间。
作为一种可选地实施例,确定服务器时间对应的客户端时间可以具体包括:获取与服务器之间的目标时间差;根据目标时间差确定服务器时间对应的客户端时间,其中,客户端时间为服务器的时间与目标时间差的和。
需要说明的是,确定与服务器时间对应的客户端时间的关键在于如何获取目标时间差,可选地,本发明实施例中获取目标时间差可以通过以下两种方式:
第一种方式:按照以下公式获取与服务器之间的目标时间差:
ActualDelta=Min(ActualDelta,CalcDelta)
其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为服务器发送对时包的时间,C1为接收到服务器发送的对时包的时间,S1为接收到对时包时服务器的时间,ActualDelta为目标时间差。
第二种方式:按照以下公式获取与服务器之间的目标时间差:
ActualDelta=C1-S1–NetDelay
其中,NetDelay=(C1-C0)/2,C0为向服务器发送对时包的时间,C1为接收到服务器响应对时包所返回的响应消息的时间,S1为服务器接收到对时包的时间。
需要说明的是,通过上述任意一种方式均可以获取到目标时间差,然后将其与服务器时间求和便可以获取到与服务器时间对应的客户端时间。
步骤S3042,确定接收到控制消息的接收时间。
需要说明的是,在逻辑对时确定服务器时间对应的客户端时间之后,例如确定服务器时间09:00对应客户端时间10:00,其目标时间差为1个小时。由于控制消息的传输存在延时,假设延时为1分钟,则服务器在服务器时间09:00发送的控制消息,将会在客户端时间10:01达到客户端,也即客户端接收到控制消息的接收时间为10:01。
步骤S3043,根据客户端时间和接收时间获取目标场景动画当前播放的时间戳。
需要说明的是,由于控制消息的传输存在延时,当客户端接收到控制消息之后,目标场景动画已经播放了一段时间。为了保证客户端播放目标场景动画的进度与服务器一致,进而使得各个客户端播放目标场景动画的进度同步,客户单需要确定接收到控制消息时目标场景动画的播放进度,也即根据上述步骤确定的客户端时间和接收时间获取目标场景动画当前播放的时间戳,具体地,该时间戳可以为接收时间与客户端时间之间的时间差。例如,服务器时间09:00对应客户端时间10:00,客户端接收到控制消息的接收时间为10:01,则说明目标场景动画当前播放的时间戳为1分钟,则为了保证客户端与服务器同步播放该目标场景动画,该客户端需要从目标场景动画的第1分钟开始播放。
步骤S3044,从接收时间开始播放目标场景动画中的时间戳之后的动画。
需要说明的是,在客户端确定了目标场景动画当前播放的时间戳之后,客户端可以从目标场景动画的该时间戳开始播放该时间戳之后的动画,以达到使得该客户端播放目标场景动画的进度与服务器播放目标场景动画的进度同步,而场景动画的播放系统中的所有客户端均执行相同播放流程之后,可以达到使得所有客户端同步播放目标场景动画的目的。可选地,在客户端确定了目标场景动画当前播放的时间戳之后,客户端还可以从目标场景动画的开始时刻以快进的形式播放动画,直至快进播放的进度达到服务器中的目标场景动画的进度客户端才开始以正常播放速度播放之后的动画,这种方式既能保证所有客户端在同一时间结束播放目标场景动画,以使得所有客户端同步进入下一个应用场景,又能保证各个客户端完整播放目标场景动画。在实际应用场景中,可以根据实际需求选择上述两种播放目标场景动画的方式中的任意一种。
需要说明的是,场景动画的播放系统中的所有客户端在接收到服务器发送的控制消息之后,均可以执行上述目标场景动画的播放流程,这样可以达到场景动画的播放系统中的所有客户端同步播放目标场景动画的目的。由于多个客户端与服务器均是同步播放目标场景动画,则当服务器播放完目标场景动画时,各个客户端也播放完该目标场景动画。
作为一种可选的实施例,在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息之后,服务器还可以执行以下步骤:
步骤S1,检测是否接收到第二账号发送的请求消息,其中,请求消息用于请求登录所述客户端;
步骤S2,在检测到接收到第二账号发送的请求消息的情况下,向第二账号发送控制消息,其中,控制消息用于指示第二账号所登录的客户端与多个第一账号所登录的客户端同步播放目标场景动画。
需要说明的是,第二账号为在目标场景动画播放过程中请求登录客户端的账号,当服务器检测到第二账号发送的请求消息时,可以响应该请求消息并向第二账号发送控制消息,该控制消息主要用于指示第二账号所登录的客户端播放目标场景动画。为了保证场景动画的播放系统中的所有客户端均可以同步播放目标场景动画,在目标场景动画的播放过程中,第二账号所登录的客户端在接收到服务器发送的控制消息之后,需要首先进行逻辑对时,然后再计算目标场景动画当前的播放进度,以实现按照该当前播放进度同步播放该目标场景动画。需要说明的是,第二账号接收到控制消息之后的处理流程与上述步骤S3041至步骤S3044所示的处理流程相同,区别仅在于所计算得到的目标场景动画当前的播放进度不一样。
该可选实施例能够实现对目标场景动画播放过程中请求登录客户端的账号所登录的客户端与其他客户端同步播放目标场景动画的目的,进而提高了用户对应用的使用体验。
本发明还提供了一种优选实施例,该优选实施例为本发明实施例的场景动画的播放方法应用于游戏领域的具体实例。在对该优选实施例进行详细介绍之前,此处首先对以下术语进行简要说明:
FPS手游:指在手机端运行的,第一人称射击游戏。
PVE:玩家与AI对战,指的是在游戏中玩家挑战游戏程序所控制的NPC怪物和BOSS。
NPC:非玩家控制角色,这里指在游戏中可以被玩家击杀的怪物角色。
BOSS:关卡中的怪物头领。
场景动画:游戏过程中用于承接剧情转变或突出关键事件而播放的动画,主要包括角色特定状态或动作的特写,预设的剧情对白,突出的场景变化和关键的剧情事件等。
该优选实施例提供了一种基于逻辑时间对齐的场景动画同步方案,通过服务器统一控制场景动画的触发和播放进度,所有移动设备与服务器进行对时和实时较正,保证场景动画进度同步,提高了玩家的游戏体验。
需要说明的是,在本方案中,场景动画本身的创作和播放仍是在客户端执行,但是触发播放的条件以及播放进度由服务器统一控制和下发。客户端所有场景动画及其触发条件可以通过工具导出为统一的配置,服务器读取该配置,并根据当前游戏进度和游戏状态下发场景动画触发事件和当前进度,驱动客户端中的场景动画的同步播放。
在具体应用场景中,例如在FPS手游中,多人PVE闯关作为游戏核心玩法之一,包含了丰富的游戏背景和游戏剧情。因此,在多人PVE玩法的游戏过程中,也需要使用场景动画技术推动游戏情节的发展。为了保证不同玩家设备上场景动画同步进行,FPS手游统一使用了本方案中提出的游戏场景动画同步播放技术,完成场景动画的设计和实时播放。
需要说明的是,游戏美术师可以使用场景动画编辑工具完成场景动画内容的创作,具体包括角色动作的控制,场景特效的触发及场景音效的播放等。一个场景动画内,所有的内容由统一的时间线控制,时间线直接影响场景动画的播放进度,并支持快进,定点播放等特性。
还需要说明的是,游戏策划可以根据剧情需要配置整个关卡的任务流程,并在特定任务触发或者完成时,配置对应场景动画的播放信息,主要包括场景动画的触发条件,动画时长,是否需要隐藏本地人物,是否需要切换渲染摄像机等。
通过上述预先配置,可以实现在游戏过程中服务器根据这些任务流程配置信息以及场景动画配置信息,动态触发对应的场景动画播放事件,驱动游戏剧情发展。
本方案提出的场景动画同步技术,场景动画的触发与播放由服务器统一驱动与控制。因此,该方案实施的技术基础是游戏使用Dedicated-Server(DS)式的网络同步架构,其特征主要包括如下两点:
(1)服务器上运行完整的游戏逻辑;
(2)游戏状态以服务器数据为权威,客户端只根据这些数据做表现模拟.
针对以Unity游戏引擎为基础的移动游戏,本方案提出一种可行的DS架构的实现方案。该实现方案客户端直接使用Unity引擎进行开发,服务器则选用与Unity底层一致的PhysX物理组件和Recast Navigation导航组件,保证两边物理算法的一致性。客户端的场景碰撞数据与关卡逻辑数据通过自定义工具导出到服务器,从而保证双方物理环境和游戏配置一致。服务器依赖这些数据自主运行游戏逻辑,并通过网络下发数据驱动所有客户端的游戏流程,其主要的逻辑架构可以如图2所示。
该方案中的场景动画同步交互流程可以如图4所示,具体地可以描述为:在玩家游戏过程中,也即在游戏进程推进过程中,服务器会持续检测是否触发场景动画,也即服务器会持续检测玩家是否达到游戏策划预先配置好的场景动画播放的要求,当检测到某个场景动画要求被达到后,就会触发场景动画播放事件,并通过网络下发给所有当前已连接该局游戏的玩家,例如图4中的客户端A。客户端A收到该下发事件后,会先进行逻辑对时,然后计算场景动画的播放进度,并按照当前播放进度播放场景动画。对于在场景动画播放过程中途加入的玩家,例如图4中的客户端B,服务器会补发对应的场景动画播放事件,新玩家客户端B收到该事件后,也会首先进行逻辑对时,然后根据服务器下发的数据计算出场景动画当前播放进度,并直接从该进度点开始播放,从而保证与其他玩家当前进度一致。
需要说明的是,对于多人合作闯关类游戏来说,一般允许玩家在游戏过程中途加入,这样就会导致服务器的时间线与客户端的时间线不一致,或者不同客户端之间的时间线不一致。而要实现场景动画的同步播放,必须保证所有客户端与服务器有统一的逻辑时间线。在如图2所示的DS架构中,每个客户端单独与服务器进行交互,因此逻辑对时也是每个客户端单独与服务器完成。
逻辑对时的具体算法描述如下:
如图5所示,服务器在S0的时候发送了一个包Pkg,客户端在本地时间C1的时候收到这个包,这时候服务器对应时间是S1,我们需要知道C1和S1的差值,该差值记为LogicTimeDelta。因为服务器是在S0的时候发送数据包,S1的时候才送达客户端,所以这时候的网络延迟就是S1-S0。客户端在C1时间收到这个包时,因为包里面包含了服务器发包时的时间戳,可以算出现一个差异值CalcDelta,它实际上就是双端真实时间差LogicTimeDelta和传输延迟TransmitDelay之和。
TransmitDelay=S1-S0;
LogicTimeDelta=C1-S1;
CalcDelta=C1-S0=LogicTimeDelta+TransmitDelay
如果当时的网络延迟越小,这个差异值就越接近真实的时间差。所以可以在游戏过程中持续监测这个值,并维护它的最小值,从而得到一个稳定的双端时间差ActualDelta,用来进行双端对时。当收到来自服务器指定的时间ServerTime时,客户端可以通过双端时间差计算出其对应的客户端时间ClientTime。
ActualDelta=Min(ActualDelta,CalcDelta)
ClientTime=ServerTimeStamp+ActualDelta
可选地,逻辑对时除了使用上述的最小差值算法外,还可以通过专用逻辑对时包实现,如图6所示,客户端在C0时刻发送对时请求包到服务器,服务器在S1时刻收到请求并立刻回复对时信息,客户端在C1时间收到服务器的回复,则双端时间差可以按以下方式计算:
NetDelay=(C1-C0)/2
ActualDelta=C1-S1-NetDelay
得到双端时间差ActualDelta后,客户端就可以把服务器的时间ServerTime转换成对应的本地时间ClientTime:
ClientTime=ServerTime+ActualDelta
需要说明的是,使用本方案中提出的场景动画同步技术,可以保证多人闯关类游戏中不同玩家设备上游戏场景动画的一致性与同步性,极大地提高玩家合作闯关的游戏体验。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
在该实施例2中提供了一种场景动画的播放方法,需要说明的是,该场景动画的播放方法可以由图1以及图2所示的服务器执行。
图7是根据本发明实施例2的一种可选的场景动画的播放方法的流程图,如图7所示,该方法可以包括以下步骤:
步骤S702,获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;
步骤S704,根据场景数据判断是否达到播放目标场景动画的预定触发条件;
步骤S706,在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。
需要说明的是,上述步骤S702至步骤S706的具体说明已经在本发明实施例1中的步骤S301至步骤S304(包括步骤S3041至步骤S3044)中进行了详细介绍,此处不再一一赘述。
通过上述步骤S702至步骤S706,通过获取多个客户端发送的场景数据,并根据场景数据判断是否达到播放目标场景动画的预定触发条件,在达到预定触发条件的情况下向所有的客户端发送控制消息,以指示所有的客户端同步播放目标场景动画,达到了保证应用的场景动画的播放进度同步的目的,进而解决了相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题,从而提高了用户对应用的使用体验。
作为一种可选的实施例,在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息之后,服务器还可以执行以下步骤:检测是否接收到第二账号发送的请求消息,其中,请求消息用于请求登录所述客户端;在检测到接收到第二账号发送的请求消息的情况下,向第二账号发送控制消息,其中,控制消息用于指示第二账号所登录的客户端与多个第一账号所登录的客户端同步播放目标场景动画。
需要说明的是,第二账号为在目标场景动画播放过程中请求登录所述客户端的账号,当服务器检测到第二账号发送的请求消息时,可以响应该请求消息并向第二账号发送控制消息,该控制消息主要用于指示第二账号所在的客户端播放目标场景动画。为了保证场景动画的播放系统中的所有客户端均可以同步播放目标场景动画,在目标场景动画的播放过程中,第二账号所在的客户端在接收到服务器发送的控制消息之后,需要首先进行逻辑对时,然后再计算目标场景动画当前的播放进度,以实现按照该当前播放进度同步播放该目标场景动画。需要说明的是,第二账号接收到控制消息之后的处理流程与本发明实施例1中的步骤S3041至步骤S3044所示的处理流程相同,区别仅在于所计算得到的目标场景动画当前的播放进度不一样。
该可选实施例能够实现对目标场景动画播放过程中请求登录客户端的账号所登录的客户端与其他客户端同步播放目标场景动画的目的,进而提高了用户对应用的使用体验。
作为一种可选的实施例,预定触发条件可以包括以下至少之一:第一账号对应的事件对象进入目标区域;第一账号对应的事件对象在目标区域的停留时间大于预定时间;第一账号完成目标任务;第一账号的属性值超过预定阈值,其中,属性值包括以下至少之一:账号等级、账号登录时间、账号对应的事件资源数量。
需要说明的是,第一账号对应的事件对象可以为在客户端运行过程中第一账号对应的虚拟的事件对象,例如,第一账号对应的事件对象可以为游戏中的角色人物。目标区域可以为任意指定的区域;目标任务可以为任意指定的任务;预定时间和预定阈值可以根据实际需求设定,此处不做具体限定。还需要说明的是,本发明实施例中的预定触发条件还可以包括其他条件,此处不再一一举例说明。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例3
在该实施例3中也提供了一种场景动画的播放方法,需要说明的是,该场景动画的播放方法可以由图1以及图2所示的客户端执行。
图8是根据本发明实施例3的一种可选的场景动画的播放方法的流程图,如图8所示,该方法可以包括以下步骤:
步骤S802,将第一账号对应的场景数据导出给服务器,其中,场景数据为第一账号登录客户端后所产生的数据;
步骤S804,接收服务器返回的控制消息,其中,服务器用于根据场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到预定触发条件的情况下返回控制消息,控制消息用于指示播放目标场景动画;
步骤S806,按照控制消息播放目标场景动画。
需要说明的是,上述步骤S802至步骤S806的具体说明已经在本发明实施例1中的步骤S301至步骤S304(包括步骤S3041至步骤S3044)中进行了详细介绍,此处不再一一赘述。
通过上述步骤S802至步骤S806,通过获取多个客户端发送的场景数据,并根据场景数据判断是否达到播放目标场景动画的预定触发条件,在达到预定触发条件的情况下向所有的客户端发送控制消息,以指示所有的客户端同步播放目标场景动画,达到了保证应用的场景动画的播放进度同步的目的,进而解决了相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题,从而提高了用户对应用的使用体验。
作为一种可选的实施例,控制消息中携带有服务器指示开始播放目标场景动画的服务器时间,其中,步骤S806按照控制消息播放目标场景动画可以包括:确定服务器时间对应的客户端时间;确定接收到控制消息的接收时间;根据客户端时间和接收时间获取目标场景动画当前播放的时间戳,其中,时间戳为接收时间与客户端时间之间的时间差;从接收时间开始播放目标场景动画中的时间戳之后的动画。
可选地,确定服务器时间对应的客户端时间可以包括:获取与服务器之间的目标时间差;根据目标时间差确定服务器时间对应的客户端时间,其中,客户端时间为服务器的时间与目标时间差的和。
可选地,该可选实施例可以按照以下公式获取与服务器之间的目标时间差:ActualDelta=Min(ActualDelta,CalcDelta),其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为服务器发送对时包的时间,C1为接收到服务器发送的对时包的时间,S1为接收到对时包时服务器的时间,ActualDelta为目标时间差。
可选地,该可选实施例可以按照以下公式获取与服务器之间的目标时间差:ActualDelta=C1-S1–NetDelay,其中,NetDelay=(C1-C0)/2,C0为向服务器发送对时包的时间,C1为接收到服务器响应对时包所返回的响应消息的时间,S1为服务器接收到对时包的时间。
需要说明的是,对该可选实施例的具体介绍已经在本发明实施例1中的步骤S3041至步骤S3044中进行了详细介绍,此处不再一一赘述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例4
根据本发明实施例,还提供了一种用于实施本发明实施例2中的场景动画的播放方法的场景动画的播放装置。图9是根据本发明实施例4的一种可选的场景动画的播放装置的示意图,如图9所示,该装置可以包括:
获取单元92,用于获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;判断单元94,用于根据场景数据判断是否达到播放目标场景动画的预定触发条件;第一发送单元96,用于在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。
需要说明的是,该实施例中的获取单元92可以用于执行本申请实施例1中的步骤S702,该实施例中的判断单元94可以用于执行本申请实施例1中的步骤S704,该实施例中的第一发送单元96可以用于执行本申请实施例1中的步骤S706。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例2所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1或者图2所示的服务器中,可以通过软件实现,也可以通过硬件实现。
作为一种可选的实施例,该可选实施例还可以包括:检测单元,用于在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息之后,检测是否接收到第二账号发送的请求消息,其中,请求消息用于请求登录所述客户端;第二发送单元,用于在检测到接收到第二账号发送的请求消息的情况下,向第二账号发送控制消息,其中,控制消息用于指示第二账号所登录的客户端与多个第一账号所登录的客户端同步播放目标场景动画。
作为一种可选的实施例,预定触发条件可以包括以下至少之一:第一账号对应的事件对象进入目标区域;第一账号对应的事件对象在目标区域的停留时间大于预定时间;第一账号完成目标任务;第一账号的属性值超过预定阈值,其中,属性值包括以下至少之一:账号等级、账号登录时间、账号对应的事件资源数量。
通过上述模块,可以解决相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题,进而达到了提高用户对应用的使用体验的效果。
实施例5
根据本发明实施例,还提供了一种用于实施本发明实施例3中的场景动画的播放方法的场景动画的播放装置。图10是根据本发明实施例5的一种可选的场景动画的播放装置的示意图,如图10所示,该装置可以包括:
导出单元102,用于将第一账号对应的场景数据导出给服务器,其中,场景数据为第一账号登录客户端后所产生的数据;接收单元104,用于接收服务器返回的控制消息,其中,服务器用于根据场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到预定触发条件的情况下返回控制消息,控制消息用于指示播放目标场景动画;播放单元106,用于按照控制消息播放目标场景动画。
需要说明的是,该实施例中的导出单元102可以用于执行本申请实施例1中的步骤S802,该实施例中的接收单元104可以用于执行本申请实施例1中的步骤S804,该实施例中的播放单元106可以用于执行本申请实施例1中的步骤S806。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例3所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1或者图2所示的客户端中,可以通过软件实现,也可以通过硬件实现。
作为一种可选的实施例,控制消息中携带有服务器指示开始播放目标场景动画的服务器时间,其中,播放单元106可以包括:第一确定模块,用于确定服务器时间对应的客户端时间;第二确定模块,用于确定接收到控制消息的接收时间;获取模块,用于根据客户端时间和接收时间获取目标场景动画当前播放的时间戳,其中,时间戳为接收时间与客户端时间之间的时间差;播放模块,用于从接收时间开始播放目标场景动画中的时间戳之后的动画。
作为一种可选的实施例,第一确定模块可以包括:获取子模块,用于获取与服务器之间的目标时间差;确定子模块,用于根据目标时间差确定服务器时间对应的客户端时间,其中,客户端时间为服务器的时间与目标时间差的和。
作为一种可选的实施例,获取子模块用于按照以下公式获取与服务器之间的目标时间差:ActualDelta=Min(ActualDelta,CalcDelta),其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为服务器发送对时包的时间,C1为接收到服务器发送的对时包的时间,S1为接收到对时包时服务器的时间,ActualDelta为目标时间差。
作为一种可选的实施例,获取子模块用于按照以下公式获取与服务器之间的目标时间差:ActualDelta=C1-S1–NetDelay,其中,NetDelay=(C1-C0)/2,C0为向服务器发送对时包的时间,C1为接收到服务器响应对时包所返回的响应消息的时间,S1为服务器接收到对时包的时间。
通过上述模块,可以解决相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题,进而达到了提高用户对应用的使用体验的效果。
实施例6
根据本发明实施例,还提供了一种用于实施上述场景动画的播放方法的终端。
图11是根据本发明实施例的一种终端的结构框图,如图11所示,该终端可以包括:一个或多个(图中仅示出一个)处理器201、存储器203、以及传输装置205,如图11所示,该终端还可以包括输入输出设备207。
其中,存储器203可用于存储软件程序以及模块,如本发明实施例中的场景动画的播放方法和装置对应的程序指令/模块,处理器201通过运行存储在存储器203内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的场景动画的播放方法。存储器203可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器203可进一步包括相对于处理器201远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置205用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置205包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置205为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器203用于存储应用程序。
处理器201可以调用存储器203存储的应用程序,以执行下述步骤:获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;根据场景数据判断是否达到播放目标场景动画的预定触发条件;在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。
处理器201还用于执行下述步骤:在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息之后,检测是否接收到第二账号发送的请求消息,其中,请求消息用于请求登录所述客户端;在检测到接收到第二账号发送的请求消息的情况下,向第二账号发送控制消息,其中,控制消息用于指示第二账号所登录的客户端与多个第一账号所登录的客户端同步播放目标场景动画。
处理器201可以调用存储器203存储的应用程序,以执行下述步骤:将第一账号对应的场景数据导出给服务器,其中,场景数据为第一账号登录客户端所产生的数据;接收服务器返回的控制消息,其中,服务器用于根据场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到预定触发条件的情况下返回控制消息,控制消息用于指示播放目标场景动画;按照控制消息播放目标场景动画。
处理器201还用于执行下述步骤:确定服务器时间对应的客户端时间;确定接收到控制消息的接收时间;根据客户端时间和接收时间获取目标场景动画当前播放的时间戳,其中,时间戳为接收时间与客户端时间之间的时间差;从接收时间开始播放目标场景动画中的时间戳之后的动画。
处理器201还用于执行下述步骤:获取与服务器之间的目标时间差;根据目标时间差确定服务器时间对应的客户端时间,其中,客户端时间为服务器的时间与目标时间差的和。
处理器201还用于执行下述步骤:按照以下公式获取与服务器之间的目标时间差:ActualDelta=Min(ActualDelta,CalcDelta),其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为服务器发送对时包的时间,C1为接收到服务器发送的对时包的时间,S1为接收到对时包时服务器的时间,ActualDelta为目标时间差。
处理器201还用于执行下述步骤:按照以下公式获取与服务器之间的目标时间差:ActualDelta=C1-S1–NetDelay,其中,NetDelay=(C1-C0)/2,C0为向服务器发送对时包的时间,C1为接收到服务器响应对时包所返回的响应消息的时间,S1为服务器接收到对时包的时间。
采用本发明实施例,提供了一种场景动画的播放方案,该方案采用服务器统一控制场景动画播放的方式,通过获取多个客户端发送的场景数据,并根据场景数据判断是否达到播放目标场景动画的预定触发条件,在达到预定触发条件的情况下向所有的客户端发送控制消息,以指示所有的客户端同步播放目标场景动画,达到了保证应用的场景动画的播放进度同步的目的,进而解决了相关技术由于网络延迟或抖动等因素造成多个客户端中的同一个应用的场景动画的播放进度不一致的技术问题,从而提高了用户对应用的使用体验。
可选地,本实施例中的具体示例可以参考上述实施例1至实施例5中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图11所示的结构仅为示意,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile InternetDevices,MID)、PAD等终端设备。图11其并不对上述电子装置的结构造成限定。例如,终端还可包括比图11中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图11所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例7
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行场景动画的播放方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,获取多个第一账号对应的场景数据,其中,场景数据为多个第一账号登录客户端后所产生的数据;
S2,根据场景数据判断是否达到播放目标场景动画的预定触发条件;
S3,在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息,其中,控制消息用于指示多个第一账号所登录的客户端同步播放目标场景动画。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在达到播放目标场景动画的预定触发条件的情况下,向多个第一账号中的每个第一账号发送控制消息之后,检测是否接收到第二账号发送的请求消息,其中,请求消息用于请求登录所述客户端;在检测到接收到第二账号发送的请求消息的情况下,向第二账号发送控制消息,其中,控制消息用于指示第二账号所登录的客户端与多个第一账号所登录的客户端同步播放目标场景动画。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,将第一账号对应的场景数据导出给服务器,其中,场景数据为第一账号登录客户端后所产生的数据;
S2,接收服务器返回的控制消息,其中,服务器用于根据场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到预定触发条件的情况下返回控制消息,控制消息用于指示播放目标场景动画;
S3,按照控制消息播放目标场景动画。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:确定服务器时间对应的客户端时间;确定接收到控制消息的接收时间;根据客户端时间和接收时间获取目标场景动画当前播放的时间戳,其中,时间戳为接收时间与客户端时间之间的时间差;从接收时间开始播放目标场景动画中的时间戳之后的动画。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:获取与服务器之间的目标时间差;根据目标时间差确定服务器时间对应的客户端时间,其中,客户端时间为服务器的时间与目标时间差的和。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:按照以下公式获取与服务器之间的目标时间差:ActualDelta=Min(ActualDelta,CalcDelta),其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为服务器发送对时包的时间,C1为接收到服务器发送的对时包的时间,S1为接收到对时包时服务器的时间,ActualDelta为目标时间差。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:按照以下公式获取与服务器之间的目标时间差:ActualDelta=C1-S1–NetDelay,其中,NetDelay=(C1-C0)/2,C0为向服务器发送对时包的时间,C1为接收到服务器响应对时包所返回的响应消息的时间,S1为服务器接收到对时包的时间。
可选地,本实施例中的具体示例可以参考上述实施例1至实施例5中所描述的示例,本实施例在此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (17)
1.一种场景动画的播放方法,其特征在于,包括:
获取多个第一账号对应的场景数据,其中,所述场景数据为所述多个第一账号登录客户端后所产生的数据;
根据所述场景数据判断是否达到播放目标场景动画的预定触发条件;
在达到播放所述目标场景动画的所述预定触发条件的情况下,向所述多个第一账号中的每个第一账号发送控制消息,其中,所述控制消息用于指示所述多个第一账号所登录的客户端同步播放所述目标场景动画。
2.根据权利要求1所述的方法,其特征在于,在达到播放所述目标场景动画的所述预定触发条件的情况下,向所述多个第一账号中的每个第一账号发送控制消息之后,所述方法还包括:
检测是否接收到第二账号发送的请求消息,其中,所述请求消息用于请求登录所述客户端;
在检测到接收到所述第二账号发送的所述请求消息的情况下,向所述第二账号发送所述控制消息,其中,所述控制消息用于指示所述第二账号所登录的客户端与所述多个第一账号所登录的客户端同步播放所述目标场景动画。
3.根据权利要求1或2所述的方法,其特征在于,所述预定触发条件包括以下至少之一:
所述第一账号对应的事件对象进入目标区域;
所述第一账号对应的事件对象在所述目标区域的停留时间大于预定时间;
所述第一账号完成目标任务;
所述第一账号的属性值超过预定阈值,其中,所述属性值包括以下至少之一:账号等级、账号登录时间、账号对应的事件资源数量。
4.一种场景动画的播放方法,其特征在于,包括:
将第一账号对应的场景数据导出给服务器,其中,所述场景数据为所述第一账号登录客户端后所产生的数据;
接收所述服务器返回的控制消息,其中,所述服务器用于根据所述场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到所述预定触发条件的情况下返回所述控制消息,所述控制消息用于指示播放所述目标场景动画;
按照所述控制消息播放所述目标场景动画。
5.根据权利要求4所述的方法,其特征在于,所述控制消息中携带有所述服务器指示开始播放所述目标场景动画的服务器时间,其中,所述按照所述控制消息播放所述目标场景动画包括:
确定所述服务器时间对应的客户端时间;
确定接收到所述控制消息的接收时间;
根据所述客户端时间和所述接收时间获取所述目标场景动画当前播放的时间戳,其中,所述时间戳为所述接收时间与所述客户端时间之间的时间差;
从所述接收时间开始播放所述目标场景动画中的所述时间戳之后的动画。
6.根据权利要求5所述的方法,其特征在于,所述确定所述服务器时间对应的客户端时间包括:
获取与所述服务器之间的目标时间差;
根据所述目标时间差确定所述服务器时间对应的客户端时间,其中,所述客户端时间为所述服务器的时间与所述目标时间差的和。
7.根据权利要求6所述的方法,其特征在于,按照以下公式获取与所述服务器之间的所述目标时间差:
ActualDelta=Min(ActualDelta,CalcDelta)
其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为所述服务器发送对时包的时间,C1为接收到所述服务器发送的所述对时包的时间,S1为接收到所述对时包时所述服务器的时间,ActualDelta为所述目标时间差。
8.根据权利要求6所述的方法,其特征在于,按照以下公式获取与所述服务器之间的所述目标时间差:
ActualDelta=C1-S1-NetDelay
其中,NetDelay=(C1-C0)/2,C0为向所述服务器发送对时包的时间,C1为接收到所述服务器响应所述对时包所返回的响应消息的时间,S1为所述服务器接收到所述对时包的时间。
9.一种场景动画的播放装置,其特征在于,包括:
获取单元,用于获取多个第一账号对应的场景数据,其中,所述场景数据为所述多个第一账号登录客户端后所产生的数据;
判断单元,用于根据所述场景数据判断是否达到播放目标场景动画的预定触发条件;
第一发送单元,用于在达到播放所述目标场景动画的所述预定触发条件的情况下,向所述多个第一账号中的每个第一账号发送控制消息,其中,所述控制消息用于指示所述多个第一账号所登录的客户端同步播放所述目标场景动画。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
检测单元,用于在达到播放所述目标场景动画的所述预定触发条件的情况下,向所述多个第一账号中的每个第一账号发送控制消息之后,检测是否接收到第二账号发送的请求消息,其中,所述请求消息用于请求登录所述客户端;
第二发送单元,用于在检测到接收到所述第二账号发送的所述请求消息的情况下,向所述第二账号发送所述控制消息,其中,所述控制消息用于指示所述第二账号所登录的客户端与所述多个第一账号所登录的客户端同步播放所述目标场景动画。
11.根据权利要求9或10所述的装置,其特征在于,所述预定触发条件包括以下至少之一:
所述第一账号对应的事件对象进入目标区域;
所述第一账号对应的事件对象在所述目标区域的停留时间大于预定时间;
所述第一账号完成目标任务;
所述第一账号的属性值超过预定阈值,其中,所述属性值包括以下至少之一:账号等级、账号登录时间、账号对应的事件资源数量。
12.一种场景动画的播放装置,其特征在于,包括:
导出单元,用于将第一账号对应的场景数据导出给服务器,其中,所述场景数据为所述第一账号登录客户端后所产生的数据;
接收单元,用于接收所述服务器返回的控制消息,其中,所述服务器用于根据所述场景数据判断是否达到播放目标场景动画的预定触发条件,并在达到所述预定触发条件的情况下返回所述控制消息,所述控制消息用于指示播放所述目标场景动画;
播放单元,用于按照所述控制消息播放所述目标场景动画。
13.根据权利要求12所述的装置,其特征在于,所述控制消息中携带有所述服务器指示开始播放所述目标场景动画的服务器时间,其中,所述播放单元包括:
第一确定模块,用于确定所述服务器时间对应的客户端时间;
第二确定模块,用于确定接收到所述控制消息的接收时间;
获取模块,用于根据所述客户端时间和所述接收时间获取所述目标场景动画当前播放的时间戳,其中,所述时间戳为所述接收时间与所述客户端时间之间的时间差;
播放模块,用于从所述接收时间开始播放所述目标场景动画中的所述时间戳之后的动画。
14.根据权利要求13所述的装置,其特征在于,所述第一确定模块包括:
获取子模块,用于获取与所述服务器之间的目标时间差;
确定子模块,用于根据所述目标时间差确定所述服务器时间对应的客户端时间,其中,所述客户端时间为所述服务器的时间与所述目标时间差的和。
15.根据权利要求14所述的装置,其特征在于,所述获取子模块用于按照以下公式获取与所述服务器之间的所述目标时间差:
ActualDelta=Min(ActualDelta,CalcDelta)
其中,CalcDelta=LogicTimeDelta+TransmitDelay,TransmitDelay=S1-S0,LogicTimeDelta=C1-S1,S0为所述服务器发送对时包的时间,C1为接收到所述服务器发送的所述对时包的时间,S1为接收到所述对时包时所述服务器的时间,ActualDelta为所述目标时间差。
16.根据权利要求14所述的装置,其特征在于,所述获取子模块用于按照以下公式获取与所述服务器之间的所述目标时间差:
ActualDelta=C1-S1-NetDelay
其中,NetDelay=(C1-C0)/2,C0为向所述服务器发送对时包的时间,C1为接收到所述服务器响应所述对时包所返回的响应消息的时间,S1为所述服务器接收到所述对时包的时间。
17.一种场景动画的播放系统,其特征在于,包括:
服务器和多个客户端;
其中,所述服务器用于执行权利要求1至3中任一项所述的场景动画的播放方法,所述多个客户端中的每个客户端用于执行权利要求4至8中任一项所述的场景动画的播放方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710355474.1A CN107302707A (zh) | 2017-05-18 | 2017-05-18 | 场景动画的播放方法、装置及系统 |
PCT/CN2018/081607 WO2018210071A1 (zh) | 2017-05-18 | 2018-04-02 | 场景动画的播放方法、装置及系统 |
US16/513,289 US11050823B2 (en) | 2017-05-18 | 2019-07-16 | Method, apparatus, and system for playing scene animation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710355474.1A CN107302707A (zh) | 2017-05-18 | 2017-05-18 | 场景动画的播放方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107302707A true CN107302707A (zh) | 2017-10-27 |
Family
ID=60137840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710355474.1A Pending CN107302707A (zh) | 2017-05-18 | 2017-05-18 | 场景动画的播放方法、装置及系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11050823B2 (zh) |
CN (1) | CN107302707A (zh) |
WO (1) | WO2018210071A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108310765A (zh) * | 2017-12-14 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 图像的显示方法和装置、存储介质、电子装置 |
WO2018210071A1 (zh) * | 2017-05-18 | 2018-11-22 | 腾讯科技(深圳)有限公司 | 场景动画的播放方法、装置及系统 |
CN109603153A (zh) * | 2018-12-13 | 2019-04-12 | 网易(杭州)网络有限公司 | 虚拟事件处理方法及装置、电子设备和存储介质 |
CN109660559A (zh) * | 2019-01-21 | 2019-04-19 | 竞技世界(北京)网络技术有限公司 | 一种基于时间戳的客户端与服务器端场景同步方法 |
CN109966740A (zh) * | 2019-03-18 | 2019-07-05 | 腾讯科技(上海)有限公司 | 一种场景实现方法、装置及设备 |
CN112386906A (zh) * | 2020-11-19 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 媒体资源播放方法和装置、存储介质及电子设备 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371816A (zh) * | 2018-12-25 | 2020-07-03 | 上海亮衡信息科技有限公司 | 一种基于条件触发的通信方法、系统及通信设备 |
CN111145317B (zh) * | 2019-12-26 | 2024-05-14 | 北京像素软件科技股份有限公司 | 游戏动画的播放方法、装置及服务器 |
CN111338709B (zh) * | 2020-02-25 | 2023-09-22 | 北京金山安全软件有限公司 | 客户端中目标场景的跳转方法、装置、设备及存储介质 |
CN111744195B (zh) * | 2020-06-11 | 2024-03-22 | 北京冰封互娱科技有限公司 | 模型控制方法和装置、存储介质和电子装置 |
CN111917852A (zh) * | 2020-07-23 | 2020-11-10 | 上海珀立信息科技有限公司 | 基于Unity的多人网络同步系统及开发方法 |
CN112612398A (zh) * | 2020-12-25 | 2021-04-06 | 珠海金山网络游戏科技有限公司 | 一种数据处理方法与装置 |
CN112807698B (zh) * | 2020-12-31 | 2023-05-30 | 上海米哈游天命科技有限公司 | 拍摄位置的确定方法、装置、电子设备及存储介质 |
CN113827963A (zh) * | 2021-09-26 | 2021-12-24 | 网易(杭州)网络有限公司 | 用户操作的引导方法、装置和电子设备 |
CN114632329B (zh) * | 2022-05-16 | 2022-10-25 | 荣耀终端有限公司 | 终端设备性能调节方法和相关装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1945588A (zh) * | 2006-10-27 | 2007-04-11 | 北京金山软件有限公司 | 网络游戏系统及创建游戏元素的方法 |
CN101262494A (zh) * | 2008-01-23 | 2008-09-10 | 华为技术有限公司 | 对发布信息进行处理的方法、客户端、服务器和系统 |
CN101577715A (zh) * | 2009-06-19 | 2009-11-11 | 腾讯科技(深圳)有限公司 | 一种同步网络游戏时间的方法及装置 |
CN102497447A (zh) * | 2011-12-26 | 2012-06-13 | 北京像素软件科技股份有限公司 | 网络游戏场景关卡声光效果的多用户同步方法 |
CN105025061A (zh) * | 2014-04-29 | 2015-11-04 | 中国电信股份有限公司 | 构建云端共享游戏场景的方法与服务器 |
CN105099649A (zh) * | 2015-08-14 | 2015-11-25 | 宋亚玲 | 一种网络时间同步嵌入的方法和系统 |
CN106559426A (zh) * | 2016-11-24 | 2017-04-05 | 腾讯科技(深圳)有限公司 | 一种基于帧同步的数据处理方法和服务器以及客户端 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8137201B2 (en) * | 2009-01-09 | 2012-03-20 | Microsoft Corporation | Arrangement for building and operating human-computation and other games |
CN102468906B (zh) * | 2010-11-04 | 2016-03-02 | 腾讯科技(深圳)有限公司 | 一种联网游戏中交互逻辑容错的方法以及联网游戏容错系统 |
US9821230B2 (en) * | 2011-11-08 | 2017-11-21 | Zynga Inc. | Data-driven state machine for user interactive displays |
CN107302707A (zh) * | 2017-05-18 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 场景动画的播放方法、装置及系统 |
-
2017
- 2017-05-18 CN CN201710355474.1A patent/CN107302707A/zh active Pending
-
2018
- 2018-04-02 WO PCT/CN2018/081607 patent/WO2018210071A1/zh active Application Filing
-
2019
- 2019-07-16 US US16/513,289 patent/US11050823B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1945588A (zh) * | 2006-10-27 | 2007-04-11 | 北京金山软件有限公司 | 网络游戏系统及创建游戏元素的方法 |
CN101262494A (zh) * | 2008-01-23 | 2008-09-10 | 华为技术有限公司 | 对发布信息进行处理的方法、客户端、服务器和系统 |
CN101577715A (zh) * | 2009-06-19 | 2009-11-11 | 腾讯科技(深圳)有限公司 | 一种同步网络游戏时间的方法及装置 |
CN102497447A (zh) * | 2011-12-26 | 2012-06-13 | 北京像素软件科技股份有限公司 | 网络游戏场景关卡声光效果的多用户同步方法 |
CN105025061A (zh) * | 2014-04-29 | 2015-11-04 | 中国电信股份有限公司 | 构建云端共享游戏场景的方法与服务器 |
CN105099649A (zh) * | 2015-08-14 | 2015-11-25 | 宋亚玲 | 一种网络时间同步嵌入的方法和系统 |
CN106559426A (zh) * | 2016-11-24 | 2017-04-05 | 腾讯科技(深圳)有限公司 | 一种基于帧同步的数据处理方法和服务器以及客户端 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018210071A1 (zh) * | 2017-05-18 | 2018-11-22 | 腾讯科技(深圳)有限公司 | 场景动画的播放方法、装置及系统 |
US11050823B2 (en) | 2017-05-18 | 2021-06-29 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus, and system for playing scene animation |
CN108310765A (zh) * | 2017-12-14 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 图像的显示方法和装置、存储介质、电子装置 |
CN109603153A (zh) * | 2018-12-13 | 2019-04-12 | 网易(杭州)网络有限公司 | 虚拟事件处理方法及装置、电子设备和存储介质 |
CN109603153B (zh) * | 2018-12-13 | 2022-07-12 | 网易(杭州)网络有限公司 | 虚拟事件处理方法及装置、电子设备和存储介质 |
CN109660559A (zh) * | 2019-01-21 | 2019-04-19 | 竞技世界(北京)网络技术有限公司 | 一种基于时间戳的客户端与服务器端场景同步方法 |
CN109660559B (zh) * | 2019-01-21 | 2021-05-04 | 竞技世界(北京)网络技术有限公司 | 一种基于时间戳的客户端与服务器端场景同步方法 |
CN109966740A (zh) * | 2019-03-18 | 2019-07-05 | 腾讯科技(上海)有限公司 | 一种场景实现方法、装置及设备 |
CN109966740B (zh) * | 2019-03-18 | 2022-05-20 | 腾讯科技(上海)有限公司 | 一种场景实现方法、装置及设备 |
CN112386906A (zh) * | 2020-11-19 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 媒体资源播放方法和装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US11050823B2 (en) | 2021-06-29 |
WO2018210071A1 (zh) | 2018-11-22 |
US20190342386A1 (en) | 2019-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107302707A (zh) | 场景动画的播放方法、装置及系统 | |
US11439919B2 (en) | Integrating commentary content and gameplay content over a multi-user platform | |
CN109672918B (zh) | 动画的同步播放方法和装置 | |
CN111767503A (zh) | 一种游戏数据处理方法、装置、计算机及可读存储介质 | |
CN109876444B (zh) | 数据展示方法和装置、存储介质及电子装置 | |
CN101346162B (zh) | 游戏装置以及游戏装置的控制方法 | |
CN113473208B (zh) | 弹幕显示方法、装置、计算机设备和存储介质 | |
EP1552865A1 (en) | Game machine and program | |
CN105288998B (zh) | 智能硬件的交互方法及装置 | |
CN109874059A (zh) | 直播界面展示方法、客户端及存储介质、计算机设备 | |
CN108310766A (zh) | 数据处理方法和装置、存储介质、处理器及终端 | |
CN108310771A (zh) | 任务的执行方法和装置、存储介质、电子装置 | |
CN108261762B (zh) | 数据同步方法和装置、存储介质及电子装置 | |
CN106039710B (zh) | 游戏录制处理方法和装置 | |
CN110124307A (zh) | 操作控制方法和装置、存储介质及电子装置 | |
WO2020220921A1 (zh) | 虚拟赛车的控制方法和装置、存储介质及设备 | |
CN108144301A (zh) | 虚拟对象信息的显示方法和装置、存储介质、电子装置 | |
CN112704873B (zh) | 事件处理方法和装置、存储介质及电子设备 | |
CN113274727A (zh) | 直播交互方法、装置和存储介质及电子设备 | |
CN108553885A (zh) | 虚拟场景中的动画播放方法和装置及存储介质、电子装置 | |
CN110898425B (zh) | 信息同步方法和装置、存储介质及电子装置 | |
CN107133561A (zh) | 事件处理方法和装置 | |
US20230241496A1 (en) | Replay editor in video games | |
CN111803958B (zh) | 虚拟对象的组队方法和装置及存储介质 | |
CN111359214B (zh) | 虚拟道具控制方法和装置、存储介质及电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171027 |
|
RJ01 | Rejection of invention patent application after publication |