CN111939565B - 虚拟场景的显示方法、系统、装置、设备以及存储介质 - Google Patents

虚拟场景的显示方法、系统、装置、设备以及存储介质 Download PDF

Info

Publication number
CN111939565B
CN111939565B CN202010885647.2A CN202010885647A CN111939565B CN 111939565 B CN111939565 B CN 111939565B CN 202010885647 A CN202010885647 A CN 202010885647A CN 111939565 B CN111939565 B CN 111939565B
Authority
CN
China
Prior art keywords
scene
virtual building
virtual
target
building element
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.)
Active
Application number
CN202010885647.2A
Other languages
English (en)
Other versions
CN111939565A (zh
Inventor
姚骁锋
仇斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010885647.2A priority Critical patent/CN111939565B/zh
Publication of CN111939565A publication Critical patent/CN111939565A/zh
Application granted granted Critical
Publication of CN111939565B publication Critical patent/CN111939565B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种虚拟场景的显示方法、系统、装置、设备以及存储介质,属于计算机技术领域。通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。

Description

虚拟场景的显示方法、系统、装置、设备以及存储介质
技术领域
本申请涉及计算机技术领域,特别涉及一种虚拟场景的显示方法、系统、装置、设备以及存储介质。
背景技术
随着多媒体技术的发展以及终端功能的多样化,在终端上能够进行的游戏种类越来越多。角色扮演类游戏是一种比较盛行的游戏,玩家能够控制虚拟对象执行各种操作,比如控制虚拟对象在虚拟场景中建造房屋等。
在游戏过程中,玩家可以控制虚拟对象建造一个庄园,庄园中可以包括房屋、树木以及草地等元素。对于处于同一个游戏服务器的玩家来说,能够通过相互配合来共同建造庄园。
但是,对于处于不同服务器的玩家来说,由于服务器之间的数据隔离,导致不同服务器的玩家无法共同建造同一个庄园,玩家可能需要更换服务器才能实现合作,导致人机交互的效率较低,玩家的游戏体验不佳。
发明内容
本申请实施例提供了一种虚拟场景的显示方法、系统、装置、设备以及存储介质,可以提升人机交互的效率。所述技术方案如下:
一方面,提供了一种虚拟场景的显示方法,应用于第一服务器,所述方法包括:
响应于第一终端的虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,所述虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上;
响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,在所述虚拟建造场景中添加所述目标虚拟建筑元素;
获取场景更新信息,所述场景更新信息用于指示在所述虚拟建造场景的多个复制场景中添加所述目标虚拟建筑元素;
响应于所述场景更新信息,在显示于所述第一终端的复制场景中,添加所述目标虚拟建筑元素。
在一种可能的实施方式中,所述在所述显示于所述第一终端的复制场景中添加错误提示包括:
通过与所述虚拟建造场景关联的目标进程,向与所述显示于所述第一终端的复制场景关联的第一进程发送与所述错误提示关联的错误信息;
通过所述第一进程接收所述错误信息,由所述第一进程在所述显示于所述第一终端的复制场景中添加所述错误提示。
一方面,提供了一种虚拟场景的显示装置,所述装置包括:
待创建位置确定模块,用于响应于第一终端的虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,所述虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上;
添加模块,用于响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,在所述虚拟建造场景中添加所述目标虚拟建筑元素;
场景更新信息获取模块,用于获取场景更新信息,所述场景更新信息用于指示在所述虚拟建造场景的多个复制场景中添加所述目标虚拟建筑元素;
所述添加模块,还用于响应于所述场景更新信息,在显示于所述第一终端的复制场景中,添加所述目标虚拟建筑元素。
在一种可能的实施方式中,所述添加模块,用于响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,通过与所述虚拟建造场景关联的目标进程,将所述目标虚拟建筑元素的创建数据添加入所述虚拟建造场景的构成数据中,所述创建数据包括所述目标虚拟建筑元素在所述虚拟建造场景中的位置以及所述目标虚拟建筑元素的形状和尺寸。
在一种可能的实施方式中,所述装置还包括:
虚拟资源确定模块,用于响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建所述目标虚拟建筑元素所需的虚拟资源的数量,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述第一虚拟对象为所述第一终端控制的虚拟对象。
在一种可能的实施方式中,所述装置还包括:
虚拟资源扣除模块,用于通过与所述显示于所述第一终端的复制场景关联的第一进程,对所述第一虚拟对象具有的虚拟资源进行扣除。
在一种可能的实施方式中,所述装置还包括:
摆放规则确定模块,用于响应于所述虚拟建造场景的所述待创建位置符合所述虚拟建造场景的虚拟建筑元素摆放规则,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素步骤,所述虚拟建筑元素摆放规则用于表示所述第一虚拟场景中虚拟建筑元素之间的相对位置关系。
在一种可能的实施方式中,所述装置还包括:
虚拟建造场景确定模块,用于响应于所述虚拟建造场景符合目标状态条件,通过与所述虚拟建造场景关联的目标进程向与所述显示于所述第一终端的复制场景关联的第一进程发送第一锁标识,所述第一锁标识表示存在通过所述第一进程,在所述虚拟建造场景上创建虚拟建筑元素的请求;响应于所述第一进程接收到所述第一锁标识,通过所述第一进程向所述目标进程发送所述第一进程接收到的锁标识;通过所述目标进程接收所述第一进程发送的锁标识,响应于所述目标进程确定所述第一进程发送的锁标识与所述第一锁标识相同,通过所述目标进程在所述虚拟建造区域中添加所述目标虚拟建筑元素,执行在所述虚拟建造场景中,添加所述目标虚拟建筑元素的步骤。
在一种可能的实施方式中,所述虚拟建造场景符合目标状态条件是指下述至少一项:
所述虚拟建造场景处于可建造状态;
所述目标进程未向任一进程发送所述第一锁标识;
所述虚拟建造场景的版本标识与所述显示于所述第一终端的复制场景的版本标识相同。
在一种可能的实施方式中,所述虚拟建造场景确定模块,还用于响应于所述目标进程在目标时长内未接收到锁标识,不再执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
在一种可能的实施方式中,所述装置还包括:
版本标识确定模块,用于通过所述第一进程向所述目标进程发送所述显示于所述第一终端的复制场景的版本标识,响应于所述目标进程确定所述显示于所述第一终端的复制场景的版本标识与所述虚拟建造场景的版本标识相同,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
在一种可能的实施方式中,所述装置还包括:
发送模块,用于将所述场景更新信息发送给第二服务器,通过所述第二服务器在显示于第二终端的复制场景中,添加所述目标虚拟建筑元素。
在一种可能的实施方式中,所述发送模块,用于通过与所述虚拟建造场景关联的目标进程,向第二服务器上的第二进程发送所述场景更新信息,所述第二进程与显示于第二终端的复制场景相关联;所述第二服务器,通过所述第二进程,将所述目标虚拟建筑元素的创建数据添加入所述显示于所述第二终端的复制场景的构成数据中。
在一种可能的实施方式中,所述添加模块还用于,响应于所述虚拟建造场景的所述待创建位置上存在虚拟建筑元素,在所述显示于所述第一终端的复制场景中添加错误提示。
在一种可能的实施方式中,所述添加模块还用于,通过与所述虚拟建造场景关联的目标进程,向与所述显示于所述第一终端的复制场景关联的第一进程发送与所述错误提示关联的错误信息;通过所述第一进程接收所述错误信息,由所述第一进程在所述显示于所述第一终端的复制场景中添加所述错误提示。
一方面,提供了一种虚拟场景的显示系统,所述系统包括:第一终端以及第一服务器;
所述第一终端用于向所述第一服务器发送虚拟建筑创建请求;
所述第一服务器用于响应于接收到所述虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,所述虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上;
所述第一服务器还用于响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,在所述虚拟建造场景中添加所述目标虚拟建筑元素;
所述第一服务器还用于获取场景更新信息,所述场景更新信息用于指示在所述虚拟建造场景的多个复制场景中添加所述目标虚拟建筑元素;
所述第一服务器还用于响应于所述场景更新信息,在显示于所述第一终端的复制场景中,添加所述目标虚拟建筑元素;
所述第一终端还用于显示添加所述目标虚拟建筑元素的复制场景。
在一种可能的实施方式中,所述第一服务器,用于响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,通过与所述虚拟建造场景关联的目标进程,将所述目标虚拟建筑元素的创建数据添加入所述虚拟建造场景的构成数据中,所述创建数据包括所述目标虚拟建筑元素在所述虚拟建造场景中的位置以及所述目标虚拟建筑元素的形状和尺寸。
在一种可能的实施方式中,所述第一服务器,还用于响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建所述目标虚拟建筑元素所需的虚拟资源的数量,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述第一虚拟对象为所述第一终端控制的虚拟对象。
在一种可能的实施方式中,所述第一服务器,还用于通过与所述显示于所述第一终端的复制场景关联的第一进程,对所述第一虚拟对象具有的虚拟资源进行扣除。
在一种可能的实施方式中,所述第一服务器,还用于响应于所述虚拟建造场景的所述待创建位置符合所述虚拟建造场景的虚拟建筑元素摆放规则,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素步骤,所述虚拟建筑元素摆放规则用于表示所述第一虚拟场景中虚拟建筑元素之间的相对位置关系。
在一种可能的实施方式中,所述第一服务器,还用于响应于所述虚拟建造场景符合目标状态条件,通过与所述虚拟建造场景关联的目标进程向与所述显示于所述第一终端的复制场景关联的第一进程发送第一锁标识,所述第一锁标识表示存在通过所述第一进程,在所述虚拟建造场景上创建虚拟建筑元素的请求;响应于所述第一进程接收到所述第一锁标识,通过所述第一进程向所述目标进程发送所述第一进程接收到的锁标识;通过所述目标进程接收所述第一进程发送的锁标识,响应于所述目标进程确定所述第一进程发送的锁标识与所述第一锁标识相同,通过所述目标进程在所述虚拟建造区域中添加所述目标虚拟建筑元素,执行在所述虚拟建造场景中,添加所述目标虚拟建筑元素的步骤。
在一种可能的实施方式中,所述虚拟建造场景符合目标状态条件是指下述至少一项:
所述虚拟建造场景处于可建造状态;
所述目标进程未向任一进程发送所述第一锁标识;
所述虚拟建造场景的版本标识与所述显示于所述第一终端的复制场景的版本标识相同。
在一种可能的实施方式中,所述第一服务器,还用于响应于所述目标进程在目标时长内未接收到锁标识,不再执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
在一种可能的实施方式中,所述第一服务器,还用于通过所述第一进程向所述目标进程发送所述显示于所述第一终端的复制场景的版本标识,响应于所述目标进程确定所述显示于所述第一终端的复制场景的版本标识与所述虚拟建造场景的版本标识相同,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
在一种可能的实施方式中,所述第一服务器,还用于将所述场景更新信息发送给第二服务器,通过所述第二服务器在显示于第二终端的复制场景中,添加所述目标虚拟建筑元素。
在一种可能的实施方式中,所述系统还包括第二服务器;
所述第一服务器,还用于通过与所述虚拟建造场景关联的目标进程,向第二服务器上的第二进程发送所述场景更新信息,所述第二进程与显示于第二终端的复制场景相关联;
所述第二服务器,用于通过所述第二进程,将所述目标虚拟建筑元素的创建数据添加入所述显示于所述第二终端的复制场景的构成数据中。
在一种可能的实施方式中,所述第一服务器,还用于响应于所述虚拟建造场景的所述待创建位置上存在虚拟建筑元素,在所述显示于所述第一终端的复制场景中添加错误提示。
在一种可能的实施方式中,所述第一服务器,还用于通过与所述虚拟建造场景关联的目标进程,向与所述显示于所述第一终端的复制场景关联的第一进程发送与所述错误提示关联的错误信息;通过所述第一进程接收所述错误信息,由所述第一进程在所述显示于所述第一终端的复制场景中添加所述错误提示。
一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现所述虚拟场景的显示方法。
一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现所述虚拟场景的显示方法。
一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述虚拟场景的显示方法。
通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种虚拟场景的显示方法的实施环境的示意图;
图2是本申请实施例提供的一种界面示意图;
图3是本申请实施例提供的一种虚拟场景的显示方法流程图;
图4是本申请实施例提供的一种虚拟场景的显示方法流程图;
图5是本申请实施例提供的一种界面示意图;
图6是本申请实施例提供的一种界面示意图;
图7是本申请实施例提供的一种界面示意图;
图8是本申请实施例提供的一种虚拟场景的显示方法交互图;
图9是本申请实施例提供的一种虚拟场景的显示方法交互图;
图10是本申请实施例提供的一种一种虚拟场景的显示系统的结构示意图;
图11是本申请实施例提供的一种虚拟场景的显示装置的结构示意图;
图12是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
本申请中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上,例如,多个参照人脸图像是指两个或两个以上的参照人脸图像。
虚拟建造场景:本申请中的虚拟建造场景为构成显示于终端上的复制场景的数据集合,虚拟建造场景本身不会由终端进行显示,服务器将虚拟建造场景关联的数据下发给不同的进程,由不同进程关联的终端进行显示。
复制场景:是基于虚拟建造场景关联的数据,由应用程序在终端上运行时显示(或提供)的虚拟场景。该复制场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。复制场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本申请实施例对复制场景的维度不加以限定。例如,复制场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该复制场景中进行移动和建造行为。
虚拟对象:是指在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在虚拟场景中显示的人物、动物、植物、油桶、墙壁、石块等。该虚拟对象可以是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象。虚拟场景中可以包括多个虚拟对象,每个虚拟对象在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。
可选地,该虚拟对象可以是通过客户端上的操作进行控制的用户角色,也可以是通过训练设置在虚拟场景对战中的人工智能(Artificial Intelligence,AI),还可以是设置在虚拟场景互动中的非用户角色(Non-Player Character,NPC)。可选地,该虚拟对象可以是在虚拟场景中进行竞技的虚拟人物。可选地,该虚拟场景中参与互动的虚拟对象的数量可以是预先设置的,也可以是根据加入互动的客户端的数量动态确定的。
大型多人在线角色扮演游戏(MMORPG,Massive(或Massively)MultiplayerOnline Role-Playing Game):是网络游戏的一种。在所有角色扮演游戏中,玩家都要扮演一个虚拟角色,并控制该角色的许多活动。
在MMPRPG中,用户能够控制虚拟对象在陆地上中跑动、跳动、爬行、弯腰前行等,也可以控制虚拟对象在海洋中游泳、漂浮或者下潜等,当然,用户也可以控制虚拟对象乘坐虚拟载具在该虚拟场景中进行移动,例如,该虚拟载具可以是虚拟马匹、虚拟船只、虚拟马车等,在此仅以上述场景进行举例说明,本申请实施例对此不作具体限定。用户也可以控制虚拟对象通过互动道具与其他虚拟对象进行战斗等方式的互动,例如,该互动道具可以是长矛、石块、火把等投掷类互动道具,也可以是弓箭、弹弓等射击类互动道具,本申请对互动道具的类型不作具体限定。
在本申请中,第一虚拟对象为第一终端控制的虚拟对象,第二虚拟对象为第二终端控制的虚拟对象。
虚拟资源:包括虚拟木材资源、虚拟石材资源、虚拟土资源以及虚拟土资源等虚拟资源,在虚拟建造场景中创建虚拟建筑元素需要消耗虚拟资源,比如,若虚拟建筑元素为虚拟墙壁,在虚拟建造场景中创建一个虚拟墙壁需要消耗的虚拟资源的数量为50个虚拟木材资源,也就是说,玩家需要使用50个虚拟木材资源来换取一个虚拟墙壁。虚拟资源由玩家控制游戏人物在游戏场景中进行收集,或者由玩家通过虚拟货币与其他玩家交换得到。
进程:是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在本申请中,第一进程为与显示于第一终端的复制场景关联的进程,第二进程为与显示于第二终端的复制场景关联的进程,目标进程为与虚拟建造场景关联的进程。
庄园:玩家自由建造的区域,玩家能够在庄园中根据自身需求建立不用风格和类型的建筑物,比如玩家在庄园中建立中式的阁楼,或者在庄园中建立西式的城堡。
建造:玩家在庄园中摆放各种不同形状,规则的物件的行为。
CS(Client-Server):客户端与服务器之间的通信。
SS(Server-Server):服务器内部的通信。
锁:保证数据安全性的一种程序设计。
图1是本申请实施例提供的一种虚拟场景的显示方法的实施环境示意图,参见图1,该实施环境中可以包括第一终端120、第二终端140以及服务器160。
图1是本申请实施例提供的一种虚拟场景的显示方法的实施环境示意图,参见图1,该实施环境包括:第一终端120、第二终端140以及服务器160。
第一终端120安装和运行有支持虚拟场景显示的应用程序。可选地,该应用程序是MMPRPG、角色扮演类游戏(Role Play Game,RPG)、模拟养成游戏(Education Simulation,ES)中的任意一种。第一终端120是第一用户使用的终端,第一用户使用第一终端120操作位于虚拟场景中的第一虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物角色或动漫人物角色。
第一终端120以及第二终端140通过无线网络或有线网络与服务器160相连。
第二终端140安装和运行有支持虚拟场景显示的应用程序。可选地,该应用程序是MMPRPG、角色扮演类游戏(Role Play Game,RPG)、模拟养成游戏(Education Simulation,ES)中的任意一种。第二终端140是第二用户使用的终端,第二用户使用第二终端140操作位于虚拟场景中的第二虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、拾取、射击、攻击、投掷中的至少一种。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物角色或动漫人物角色。
可选地,第一终端120控制的第一虚拟对象和第二终端140控制的第二虚拟对象处于不同的虚拟场景中,但是第一虚拟对象和第二虚拟对象能够在各自所处的虚拟场景中看到同一个虚拟建筑物。
可选地,第一终端120和第二终端140上安装的应用程序是相同的,或两个终端上安装的应用程序是不同操作系统平台的同一类型应用程序。其中,第一终端120泛指多个终端中的一个,第二终端140泛指多个终端中的一个,本实施例仅以第一终端120和第二终端140来举例说明。第一终端120和第二终端140的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、膝上型便携计算机和台式计算机中的至少一种。例如,第一终端120和第二终端140可以是智能手机,或者其他手持便携式游戏设备但并不局限于此。以下实施例,以终端包为智能手机来举例说明。
可选地,服务器160是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。本申请实施例对终端的数量和设备类型不加以限定。
在本申请实施例中,将以服务器160是多个物理服务器构成的服务器集群为例进行说明,也即是以服务器160包括第一服务器、第二服务器、第三服务器、……第n服务器为例,其中,n为正整数。第一服务器、第二服务器、第三服务器、……第n服务器为物理上相互独立的服务器。第一服务器、第二服务器、第三服务器、……第n服务器中存在一个主服务器,主服务器上运行有本申请提供的目标进程,目标进程用于维护本申请中的虚拟建造场景,主服务器与服务器160中其他服务器通过无线网络或有线网络连接,服务器160中其他服务器上运行有本申请提供的第一进程或第二进程,第一进程或第二进程与目标进程之间进行进程间通讯。
除此之外,可选的,主服务器上除了运行有本申请提供的目标进程之外,还运行有本申请提供的第一进程或第二进程,也即是在主服务器上目标进程和第一进程或第二进程均运行在主服务器上,本申请实施例对此不做限定。
在下述说明过程中,将分别以第一进程和目标进程均运行在第一服务器上、第二进程运行在第二服务器上以及第一进程运行在第一服务器上、第二进程运行在第二服务器上以及目标进程运行在第三服务器上为例进行说明。
介绍完本申请提供技术方案的实施环境之后,下面以MMORPG为例,对本申请提供的技术方案的使用场景进行介绍。
由于服务器的承载量是有上限的,对于同一款游戏,游戏运营商往往采用架设多个服务器来为更多的玩家提供服务,也即是上述实施环境中的第一服务器、第二服务器、第三服务器、……第n服务器。同一款游戏的不同服务器之间形成了很多个游戏的“平行世界”,也就是说,每个服务器维护的虚拟场景是一个个单独的世界,服务器之间彼此独立,不同服务器之间不会产生影响。
在游戏开始之前,MMORPG的客户端会为玩家提供如图2所示的服务器选择界面200,服务器选择界面200中显示有服务器所在的地区201以及服务器的名称202,玩家能够自行选择服务器进行游戏。
比如,在服务器A中,玩家A想要控制虚拟对象A在庄园中建造一个房屋,那么玩家A既能够选择自己单独控制虚拟对象A在庄园中进行建造,也能够选择邀请处于同一服务器A中的好友B控制虚拟对象B来庄园中帮忙建造房屋。相关技术中,若玩家A有好友C在服务器B中进行游戏,玩家A无法邀请好友C来帮忙建造房屋。
通过本申请提供的技术方案,玩家A既能够邀请处于同一服务器A中的好友B来帮忙建造房屋,也能够邀请处于不同服务器B中的好友C来帮忙建筑房屋。
图3是本申请实施例提供的一种虚拟场景的显示方法的流程图,应用于第一服务器,参见图3,方法包括:
301、响应于第一终端的虚拟建筑创建请求,第一服务器确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上。
其中,第一终端的虚拟建造创建请求为CS(Client-Server)请求。
在本申请实施例中,虚拟建造场景由第一服务器上运行的目标进程进行维护,复制场景为虚拟建造场景的复制体,复制场景中的虚拟建筑元素的数量、类型以及摆放位置与虚拟建造场景中完全相同。可选的,虚拟建造场景不会直接由终端进行显示,而是由接入不同服务器的终端进行显示,也即是,目标进程会将虚拟建造场景的构成数据下发给用于显示复制场景的进程,从而由进程为接入对应服务器的终端进行显示。
302、响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,第一服务器在虚拟建造场景中添加目标虚拟建筑元素。
可选地,目标虚拟建筑元素为虚拟墙壁、虚拟窗户、虚拟瓦片、虚拟地板以及虚拟花瓶等元素,目标虚拟建筑元素的类型与用户账号的等级相关联,用户的账号等级越高,能够创建的目标虚拟建筑元素的类型也就越多。
通过步骤302,第一服务器能够使得用户在虚拟建造场景中创建的目标虚拟建筑元素,不会与虚拟建造场景中已经存在的建筑元素发生重叠,保证虚拟建造场景能够正常进行显示。
303、第一服务器获取场景更新信息,场景更新信息用于指示在虚拟建造场景的多个复制场景中添加目标虚拟建筑元素。
可选的,场景更新信息是由第一服务器在虚拟建造场景中添加目标虚拟建筑元素之后自行触发的,场景更新信息由第一服务器发送给不同的服务器。
304、响应于场景更新信息,第一服务器在显示于第一终端的复制场景中,添加目标虚拟建筑元素。
通过步骤304,用户能够通过第一终端看到添加在复制场景中添加目标虚拟建筑元素的位置,进而在添加目标虚拟建筑元素的基础上,进一步在虚拟建造场景中添加其他的虚拟建筑元素。
通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。
图4是本申请实施例提供的一种虚拟场景的显示方法的流程图,应用于第一服务器,以第一进程和目标进程均运行在第一服务器例,参见图4,方法包括:
401、响应于第一终端的虚拟建筑创建请求,第一服务器确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上。
可选地,虚拟建筑元素为虚拟墙壁、虚拟窗户、虚拟瓦片、虚拟地板以及虚拟花瓶等元素,用户能够虚拟建造场景中自由的摆放虚拟建筑元素,多个虚拟建筑元素能够组合成完整的虚拟建筑物。当然,用户除了在虚拟建造场景中摆放虚拟建筑元素之外,也能够移除虚拟建造场景中的虚拟建筑元素,比如用户在虚拟建造场景中摆放虚拟墙壁之后,发现该虚拟墙壁摆放的位置不合适,那么用户选择该虚拟墙壁,将该虚拟墙壁从虚拟建造场景中移除。
在一种可能的实施方式中,第一终端向第一服务器发送虚拟建筑创建请求,第一服务器响应于接收到虚拟建筑物创建请求,从虚拟建筑创建请求中,获取目标虚拟建筑元素在虚拟建造场景中的待创建位置。
举例来说,第一终端为第一用户使用的终端,第一虚拟对象为第一终端所控制的虚拟对象,第一用户能够控制第一虚拟对象在第一复制场景中执行不同的动作,其中,第一复制场景为第一终端上显示的虚拟场景,第一复制场景为虚拟建造场景的一个复制场景。在一些情况下,第一用户在第一复制场景中选择了想要创建的目标虚拟建筑元素,进而触发虚拟建筑创建指令,第一终端响应于虚拟建筑创建指令,向第一服务器发送虚拟建筑创建请求。第一服务器响应于虚拟建筑创建请求,从虚拟建筑创建请求中,获取目标虚拟建筑元素在第一复制场景中的待创建位置,由于第一复制场景为虚拟建造场景的一个复制场景,那么目标虚拟建筑元素在第一复制场景中的待创建位置,也即是目标虚拟建筑元素在虚拟建造场景中的待创建位置。
比如,虚拟建造场景为MMORPG中的一个庄园,玩家能够在该庄园中自由建造自己想要建造的建筑物,参见图5,玩家能够在游戏界面中点击建造按钮501,控制游戏人物502在庄园中建造一面虚拟墙壁503。
在一种可能的实施方式中,虚拟建筑创建请求除了携带有目标虚拟建筑元素在虚拟建造场景中的待创建位置之外,还携带第一虚拟对象的标识以及目标虚拟建筑元素的标识等信息,相应的,第一服务器从虚拟建筑创建请求中获取目标虚拟建筑元素在虚拟建造场景中的待创建位置之外,还能够从虚拟建筑创建请求中获取第一虚拟对象的标识以及目标虚拟建筑元素的标识等信息。
在这种实现方式下,第一服务器能够从虚拟建筑创建请求中获取更多的与目标虚拟建筑元素关联的信息,从而提高后续判断的准确性。
402、第一服务器确定虚拟建造场景的待创建位置上是否存在虚拟建筑元素。
在一种可能的实施方式中,虚拟建造场景包括多个网格,网格为不可见的网格,也即是在不同终端显示虚拟建造场景的时,不会显示网格。虚拟建造场景中的虚拟建筑元素占据一个或多个网格,相应的,虚拟建造场景的待创建位置是指目标虚拟建筑元素在虚拟建造场景中待占据的网格的编号或坐标,第一服务器根据待占据的网格的编号或者坐标,查询该网格的状态参数,根据该网格的状态参数,确定该网格是否被占据,也即是虚拟建造场景的待创建位置上是否存在虚拟建筑元素,其中,状态参数用于表示网格是否被占据。
在这种实现方式下,第一服务器能够直接根据网格的状态参数来判断虚拟建造场景的待创建位置上是否存在虚拟建筑元素,判断过程的运算量较小,判断的效率较高。
举例来说,若虚拟建造场景上不存在虚拟建筑元素,那么构成虚拟建造场景的网格的状态参数为0。响应于在该虚拟建造场景的任一网格上创建了一个虚拟建筑元素,第一服务器将该网格的状态参数设置为1,表示该网格被占据。第一服务器通过第一进程确定虚拟场景的待创建位置对应的网格的状态参数是否为0,其中,第一进程为与显示于第一终端的复制场景关联的第一进程。响应于虚拟场景的待创建位置对应的网格的状态参数为0,第一服务器确定虚拟场景的待创建位置对应的网格未被占据,也即是虚拟场景的待创建位置上不存在虚拟建筑元素。响应于虚拟场景的待创建位置对应的网格的状态参数为1,第一服务器确定虚拟场景的待创建位置对应的网格已经被占据,也即是虚拟场景的待创建位置上存在虚拟建筑元素。
在一种可能的实施方式中,第一服务器将虚拟建造场景的待创建位置与虚拟建造场景中的虚拟建筑元素的位置进行比较。响应于待创建位置与虚拟建造场景中的每个虚拟建筑元素的位置均没有重合,第一服务器确定虚拟场景的待创建位置上不存在虚拟建筑元素。响应于待创建位置与虚拟建造场景中的任一虚拟建筑元素的位置发生重合,第一服务器确定虚拟场景的待创建位置上存在虚拟建筑元素。
举例来说,第一服务器通过第一进程将虚拟建造场景的待创建位置的坐标与虚拟建造场景中的虚拟建筑元素的坐标进行比较。响应于待创建位置的坐标与虚拟建造场景中的每个虚拟建筑元素的坐标均不相同,第一服务器确定虚拟建造场景的待创建位置上不存在虚拟建筑元素。响应于待创建位置的坐标与虚拟建造场景中的任一个虚拟建筑元素的坐标相同,第一服务器确定虚拟建造场景的待创建位置上存在虚拟建筑元素。
可选地,在步骤402之后,第一服务器还能够执行下述步骤1和2中任一项来进一步提高虚拟建造场景的显示效果。
1、第一服务器确定第一虚拟对象具有的虚拟资源的数量是否大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,第一服务器继续执行下述步骤403。响应于第一虚拟对象具有的虚拟资源的数量小于创建目标虚拟建筑元素所需的虚拟资源的数量,第一服务器不再执行下述步骤403,向第一终端发送虚拟资源不足的提示。
下面对第一服务器确定第一虚拟对象具有的虚拟资源的数量与创建目标虚拟建筑元素所需的虚拟资源的数量的方法进行说明:
在一种可能的实施方式中,第一服务器根据目标虚拟建筑元素的标识,确定创建目标虚拟建筑元素所需的虚拟资源的数量,第一服务器根据第一虚拟对象的标识,确定虚拟对象具有的虚拟资源的数量。第一服务器将第一虚拟对象具有的虚拟资源的数量与创建目标虚拟建筑元素所需的虚拟资源的数量进行比较,从而确定第一虚拟对象具有的虚拟资源的数量是否大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量。
举例来说,第一服务器通过第一进程,根据目标虚拟建筑元素的标识,从第一服务器中存储的目标虚拟建筑元素的标识与创建目标虚拟建筑元素所需的虚拟资源的数量关系表中,获取创建目标虚拟建筑元素所需的虚拟资源的数量。第一服务器通过第一进程,根据第一虚拟对象的标识,从第一服务器中存储的第一虚拟对象的标识与第一虚拟对象具有的虚拟资源的数量关系表中,获取第一虚拟对象具有的虚拟资源的数量。第一服务器通过第一进程比较第一虚拟对象具有的虚拟资源的数量和创建目标虚拟建筑元素所需的虚拟资源的数量。
2、第一服务器确定虚拟建造场景的待创建位置是否符合虚拟建造场景的虚拟建筑元素摆放规则,虚拟建筑元素摆放规则用于表示第一虚拟场景中虚拟建筑元素之间的相对位置关系,响应于该待创建位置符合虚拟建筑元素摆放规则,第一服务器继续执行下述步骤403。响应于该待创建位置符合虚拟建筑元素摆放规则,第一服务器不再执行下述步骤403,向第一终端发送待创建位置不符合虚拟建筑元素摆放规则的提示。
在一种可能的实施方式中,第一服务器根据目标虚拟建筑元素的标识,确定目标虚拟建筑元素对应的目标虚拟建筑元素摆放规则。第一服务器根据虚拟场景的待创建位置,确定创建位置与该待创建位置相邻的第一虚拟建筑元素的标识,根据第一虚拟建筑元素的标识,确定第一虚拟建筑元素对应的第一虚拟建筑元素摆放规则。响应于第一虚拟建筑元素符合目标虚拟建筑元素摆放规则,且目标虚拟建筑元素符合第一虚拟建筑元素摆放规则,第一服务器确定虚拟建造场景的待创建位置符合虚拟建造场景的虚拟建筑元素摆放规则。响应于第一虚拟建筑元素不符合目标虚拟建筑元素摆放规则,或目标虚拟建筑元素不符合第一虚拟建筑元素摆放规则,第一服务器确定虚拟建造场景的待创建位置不符合虚拟建造场景的虚拟建筑元素摆放规则。
在这种实施方式下,第一服务器在向虚拟建造场景中添加目标虚拟建筑元素之前,确定虚拟建造场景的待创建位置是否符合虚拟建造场景的虚拟建筑元素摆放规则,避免由于目标虚拟建筑元素的创建位置错误而导致显示混乱的问题,从而提高复制场景的显示效果。
举例来说,虚拟建造场景的虚拟建筑元素摆放规则为设计人员参照真实世界设计的规则,设计人员能够为不同的虚拟建筑元素设置不同的虚拟建筑元素摆放规则,比如虚拟墙壁的下方必须有虚拟地板、虚拟墙壁的中间不能穿插虚拟地板、虚拟墙壁不能创建在虚拟湖泊上以及虚拟窗户需要创建在虚拟墙壁上等规则,虚拟建筑元素的摆放规则能够保证玩家在虚拟建造场景中创建的虚拟建筑元素与真实世界更为接近,提高了游戏的真实性。第一服务器通过第一进程,根据目标虚拟建筑元素的标识,从第一服务器的存储空间中,获取目标虚拟建筑元素的虚拟建筑元素摆放规则。第一服务器通过第一进程,根据第一虚拟建筑元素的标识,从第一服务器的存储空间中,获取第一虚拟建筑元素的虚拟建筑元素摆放规则。第一服务器确定目标虚拟建筑元素是否符合第一虚拟建筑元素的虚拟建筑元素摆放规则,以及确定第一虚拟建筑元素是否符合目标虚拟建筑元素的虚拟建筑元素摆放规则。响应于目标虚拟建筑元素符合第一虚拟建筑元素的虚拟建筑元素摆放规则,且第一虚拟建筑元素符合目标虚拟建筑元素的虚拟建筑元素摆放规则,第一服务器确定虚拟建造场景的待创建位置符合虚拟建造场景的虚拟建筑元素摆放规则。响应于第一虚拟建筑元素不符合目标虚拟建筑元素摆放规则,或目标虚拟建筑元素不符合第一虚拟建筑元素摆放规则,第一服务器确定虚拟建造场景的待创建位置不符合虚拟建造场景的虚拟建筑元素摆放规则。
需要说明的是,第一服务器除了通过执行上述步骤1和步骤2来提高虚拟建造场景的显示效果之外,还能够结合上述步骤1和步骤2来提高虚拟场景的显示效果,步骤如下:
在一种可能的实施方式中,第一服务器确定第一虚拟对象具有的虚拟资源的数量是否大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,以及虚拟建造场景的待创建位置是否符合虚拟建造场景的虚拟建筑元素摆放规则,响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,且该待创建位置符合虚拟建筑元素摆放规则,第一服务器继续执行下述步骤403。响应于第一虚拟对象具有的虚拟资源的数量小于创建目标虚拟建筑元素所需的虚拟资源的数量,或该待创建位置不符合虚拟建筑元素摆放规则,第一服务器不再执行下述步骤403,向第一终端发送虚拟资源不足或待创建位置不符合虚拟建筑元素摆放规则的提示。
403、响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,第一服务器确定虚拟建造场景是否符合目标状态条件。
在一种可能的实施方式中,响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,第一服务器通过与虚拟建造场景关联的目标进程,确定虚拟建造场景是否符合目标状态条件,其中,虚拟建造场景符合目标状态条件是指下述至少一项:虚拟建造场景处于可建造状态、目标进程未向任一进程发送第一锁标识以及虚拟建造场景的版本标识与显示于第一终端的复制场景的版本标识相同。
需要说明的是,为了更加清楚简要的进行说明,没有额外说明的情况下,下述采用复制场景代指显示于第一终端的复制场景。
在这种实现方式下,第一服务器向虚拟建造场景中添加目标虚拟建筑元素时,除了测目标虚拟建筑元素与虚拟建造场景的关系之外,还检测了虚拟建造场景本身的状态,提高了目标虚拟建筑物创建的准确性。
举例来说,响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,第一服务器通过第一进程向目标进程发送锁请求,锁请求中携带有复制场景的版本标识。
下面分别基于虚拟建造场景的建造状态、目标进程发送锁标识的情况以及虚拟建造场景的版本标识与复制场景的版本标识之间的关系为例,对第一服务器通过目标进程确定虚拟建造场景是否符合目标状态条件的方法进行说明,需要说明的是,第一服务器能够通过目标进程按照顺序a、b和c来确定虚拟建造场景是否符合目标状态,也能够按照任意顺序来确定虚拟建造场景是否符合目标状态,还能够同时执行下述步骤a、b和c来确定虚拟建造场景是否符合目标状态,本申请实施例对此不做限定。
a、对于虚拟建造场景的建造状态来说,第一服务器通过目标进程对虚拟建造场景的建造状态进行识别,在MMORPG中,虚拟建造场景也称为庄园,虚拟建造场景的建造状态也即是庄园的建造状态,庄园的建造状态分为建造期、战斗期以及维修期。若庄园处于建造期,那么表示庄园的建造状态为可建造的状态,若庄园处于战斗器或维修期,那么表示庄园的建造状态为不可建造状态。可选地,第一服务器采用状态标识来表示庄园的建造状态,比如1表示建造期,2表示战斗期,3表示维修期。响应于第一服务器通过目标进程确定庄园的状态标识为1,那么表示庄园的建造状态为可建造状态。响应于第一服务器通过目标进程确定庄园的状态标识为2或3,那么表示庄园的建造状态为不可建造状态。若庄园为不可建造状态,那么目标进程确定虚拟建造场景不符合目标状态条件,第一服务器上运行的目标进程也无需执行下述步骤b。若庄园为可建造状态,那么第一服务器通过目标进程继续执行下述步骤b。
b、对于目标进程发送锁标识的情况来说,第一服务器通过目标进程确定在目标时长内,目标进程是否向其他进程发送过第一锁标识。响应于目标进程在目标时长内向任一进程发送过第一锁标识,那么目标进程确定虚拟建造场景不符合目标状态条件,也不再执行下述步骤c。若目标时长内目标进程没有进程向任一进程发送过第一锁标识,那么第一服务器通过目标进程继续执行下述步骤c,其中目标时长能够根据实际情况进行设置,比如设置为3s或者5s,本申请实施例对此不做限定。
c、对于虚拟建造场景的版本标识与复制场景的版本标识之间的关系来说,第一服务器通过目标进程获取锁请求中的复制场景的版本标识。第一服务器通过目标进程确定复制场景的版本标识与虚拟建造场景的版本标识是否相同。若复制场景的版本标识与虚拟建造场景的版本标识相同,那么目标进程确定虚拟建造场景符合目标状态条件。若复制场景的版本标识与虚拟建造场景的版本标识不相同,那么目标进程确定虚拟建造场景不符合目标状态条件。
404、响应于虚拟建造场景符合目标状态条件,第一服务器在虚拟建造场景中添加目标虚拟建筑元素。
在一种可能的实施方式中,响应于虚拟建造场景符合目标状态条件,第一服务器将目标虚拟建筑元素的创建数据添加入虚拟建造场景的构成数据中,创建数据包括在虚拟建造场景中的位置、形状和尺寸。
举例来说,响应于虚拟建造场景符合目标状态条件,第一服务器通过与虚拟建造场景关联的目标进程,向与显示于第一终端的复制场景关联的第一进程发送第一锁标识,第一锁标识表示存在通过第一进程,在虚拟建造场景上创建虚拟建筑元素的请求。响应于第一进程接收到第一锁标识,第一服务器通过第一进程向目标进程发送第一进程接收到的锁标识。第一服务器通过目标进程接收第一进程发送的锁标识,响应于目标进程确定第一进程发送的锁标识与第一锁标识相同,第一服务器将目标虚拟建筑元素的创建数据添加入虚拟建造场景的构成数据中,第一服务器通过目标进程对虚拟建造场景的版本标识进行更新,比如虚拟建造场景的版本标识为25,第一服务器通过目标进程向虚拟建造场景中添加目标虚拟建筑元素之后,通过目标进程将虚拟建造场景的版本标识更新为26。
另外,第一服务器上运行的第一进程在接收到第一锁标识之后,除了向目标进程发送接收到的锁标识之外,还能够向目标进程发送复制场景的版本标识。响应于目标进程确定第一进程发送的锁标识与第一锁标识相同,且复制场景的版本标识与虚拟建造场景的版本标识相同,第一服务器将目标虚拟建筑元素的创建数据添加入虚拟建造场景的构成数据中,第一服务器通过目标进程对虚拟建造场景的版本标识进行更新。
还有,在第一服务器通过目标进程向第一进程发送第一锁标识之后,响应于在目标时长内未接收到锁标识,目标进程不再执行在虚拟建造场景中添加目标虚拟建筑元素的步骤。
需要说明的是,在第一服务器通过目标进程向第一进程发送第一锁标识之后,第一服务器通过第一进程执行与上述步骤401-402同理的步骤。响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素、第一虚拟对象具有的虚拟资源的数量大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量以及复制场景的版本标识与虚拟建造场景的版本标识相同,第一服务器通过第一进程向目标进程发送接收到的锁标识。
在一种可能的实施方式中,若第一服务器确定第一虚拟对象具有的虚拟资源的数量大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,那么响应于虚拟建造场景符合目标状态条件,第一服务器通过第一进程,对第一虚拟对象具有的虚拟资源进行扣除,第一服务器在虚拟建造场景中添加目标虚拟建筑元素,其中,扣除的虚拟资源的数量为创建目标虚拟建筑元素所需的虚拟资源的数量。
需要说明的是,第一服务器执行完上述步骤401-404之后,还能够执行下述步骤405-406以及407。可选地,第一服务器先执行步骤405-406,再执行步骤407,或者先执行步骤407,再执行步骤405-406,或者同步执行步骤405和407,本申请实施例对此不做限定。
405、第一服务器获取场景更新信息,场景更新信息用于指示在虚拟建造场景的多个复制场景中添加目标虚拟建筑元素。
在一种可能的实施方式中,第一服务器通过目标进程向第一进程发送场景更新信息,第一服务器通过第一进程获取场景更新信息,其中,场景更新信息中携带有虚拟建造场景更新后的标识以及目标虚拟建筑元素的创建数据。
406、响应于场景更新信息,第一服务器在显示于第一终端的复制场景中,添加目标虚拟建筑元素。
在一种可能的实施方式中,响应于场景更新信息,第一服务器通过第一进程获取场景更新信息中携带的虚拟建造场景更新后的版本号以及目标虚拟建筑元素的创建数据,通过第一进程将目标虚拟建筑元素的创建数据添加入复制场景的构成数据中,将复制场景的版本号更新为虚拟建造场景更新后的版本号。参见图6,第一终端在复制场景中显示目标虚拟建筑元素601。
407、第一服务器将场景更新信息发送给第二服务器,第二服务器在显示于第二终端的复制场景中,添加目标虚拟建筑元素。
在一种可能的实施方式中,第一服务器通过与虚拟建造场景关联的目标进程,第二服务器上的第二进程发送场景更新信息。第二服务器通过第二进程,将目标虚拟建筑元素的创建数据添加入显示于第二终端的复制场景的构成数据中。
参见图7,用户虽然没有通过第二终端在虚拟建造场景中添加虚拟建筑元素,但是第二终端也能够在复制场景中显示由第一终端添加在虚拟建造场景中的目标虚拟建筑元素701。
通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。
上述步骤401-407是以第一进程和目标进程均运行在第一服务器上为例进行说明的,下面将以第一进程运行在第一服务器上,目标进程运行在第三服务器上为例进行说明,参见图8和图9,方法包括:
801、响应于第一终端的虚拟建筑创建请求,第一服务器确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上。
步骤801与上述步骤401属于同一发明构思,实现过程参见上述步骤401,在此不再赘述。
802、第一服务器确定虚拟建造场景的待创建位置上是否存在虚拟建筑元素。
步骤802与上述步骤402属于同一发明构思,实现过程参见上述步骤402,在此不再赘述。
需要说明的是,步骤801-802可以称为空间规划和物理碰撞检测。
803、响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,第一服务器向第三服务器发送锁请求。
其中,锁请求为一个SS(Server-Server)请求。
804、第三服务器确定虚拟建造场景是否符合目标状态条件。
步骤806与上述步骤405属于同一发明构思,实现过程参见上述步骤405,在此不再赘述。
805、响应于虚拟建造场景符合目标状态条件,第三服务器向第一服务器发送第一锁标识。
806、第一服务器接收第一锁标识,向第三服务器发送接收到的锁标识和显示于第一终端的复制场景的版本标识。
807、响应于第三服务器接收到的锁标识与第一锁标识相同,且显示于第一终端的复制场景的版本标识与虚拟建造场景的版本标识相同,第三服务器在虚拟建造场景中添加目标虚拟建筑元素。
808、第三服务器向第一服务器和第二服务器发送场景更新信息。
在一种可能的实施方式中,第三服务器还向第一服务器和第二服务器发送更新后的虚拟建造场景的版本标识。
809、第一服务器获取场景更新信息,场景更新信息用于指示在虚拟建造场景的多个复制场景中添加目标虚拟建筑元素。
810、响应于场景更新信息,第一服务器在显示于第一终端的复制场景中,添加目标虚拟建筑元素。
811、第二服务器获取场景更新信息。
812、响应于场景更新信息,第二服务器在显示于第二终端的复制场景中,添加目标虚拟建筑元素。
通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。
本申请还提供了一种虚拟场景的显示系统,参见图10,系统包括:第一终端1001以及第一服务器1002。
第一终端1001用于向第一服务器1002发送虚拟建筑创建请求。
第一服务器1002用于响应于接收到虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上。
第一服务器1002还用于响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,在虚拟建造场景中添加目标虚拟建筑元素。
第一服务器1002还用于获取场景更新信息,场景更新信息用于指示在虚拟建造场景的多个复制场景中添加目标虚拟建筑元素。
第一服务器1002还用于响应于场景更新信息,在显示于第一终端1001的复制场景中,添加目标虚拟建筑元素。
第一终端1001还用于显示添加目标虚拟建筑元素的复制场景。
在一种可能的实施方式中,第一服务器1002,用于响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,通过与虚拟建造场景关联的目标进程,将目标虚拟建筑元素的创建数据添加入虚拟建造场景的构成数据中,创建数据包括目标虚拟建筑元素在虚拟建造场景中的位置以及目标虚拟建筑元素的形状和尺寸。
在一种可能的实施方式中,第一服务器1002,还用于响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,执行在虚拟建造场景中添加目标虚拟建筑元素的步骤,第一虚拟对象为第一终端1001控制的虚拟对象。
在一种可能的实施方式中,第一服务器1002,还用于通过与显示于第一终端1001的复制场景关联的第一进程,对第一虚拟对象具有的虚拟资源进行扣除。
在一种可能的实施方式中,第一服务器1002,还用于响应于虚拟建造场景的待创建位置符合虚拟建造场景的虚拟建筑元素摆放规则,执行在虚拟建造场景中添加目标虚拟建筑元素步骤,虚拟建筑元素摆放规则用于表示第一虚拟场景中虚拟建筑元素之间的相对位置关系。
在一种可能的实施方式中,第一服务器1002,还用于响应于虚拟建造场景符合目标状态条件,通过与虚拟建造场景关联的目标进程向与显示于第一终端1001的复制场景关联的第一进程发送第一锁标识,第一锁标识表示存在通过第一进程,在虚拟建造场景上创建虚拟建筑元素的请求。响应于第一进程接收到第一锁标识,通过第一进程向目标进程发送第一进程接收到的锁标识。通过目标进程接收第一进程发送的锁标识,响应于目标进程确定第一进程发送的锁标识与第一锁标识相同,通过目标进程在虚拟建造区域中添加目标虚拟建筑元素,执行在虚拟建造场景中,添加目标虚拟建筑元素的步骤。
在一种可能的实施方式中,虚拟建造场景符合目标状态条件是指下述至少一项:
虚拟建造场景处于可建造状态。
目标进程未向任一进程发送第一锁标识。
虚拟建造场景的版本标识与显示于第一终端1001的复制场景的版本标识相同。
在一种可能的实施方式中,第一服务器1002,还用于响应于目标进程在目标时长内未接收到锁标识,不再执行在虚拟建造场景中添加目标虚拟建筑元素的步骤。
在一种可能的实施方式中,第一服务器1002,还用于通过第一进程向目标进程发送显示于第一终端1001的复制场景的版本标识,响应于目标进程确定显示于第一终端1001的复制场景的版本标识与虚拟建造场景的版本标识相同,执行在虚拟建造场景中添加目标虚拟建筑元素的步骤。
在一种可能的实施方式中,系统还包括第二服务器。
在一种可能的实施方式中,第一服务器1002,还用于将场景更新信息发送给第二服务器,通过第二服务器在显示于第二终端的复制场景中,添加目标虚拟建筑元素。
第一服务器1002,还用于通过与虚拟建造场景关联的目标进程,向由第二服务器上的第二进程发送场景更新信息,第二进程与显示于第二终端的复制场景相关联。
第二服务器,用于通过第二进程,将目标虚拟建筑元素的创建数据添加入显示于第二终端的复制场景的构成数据中。
在一种可能的实施方式中,第一服务器1002,还用于响应于虚拟建造场景的待创建位置上存在虚拟建筑元素,在显示于第一终端1001的复制场景中添加错误提示。
在一种可能的实施方式中,第一服务器1002,还用于通过与虚拟建造场景关联的目标进程,向与显示于第一终端1001的复制场景关联的第一进程发送与错误提示关联的错误信息。通过第一进程接收错误信息,由第一进程在显示于第一终端1001的复制场景中添加错误提示。
通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。
本申请还提供了一种虚拟场景的显示装置,图11为虚拟场景的显示装置的结构示意图,参见图11,装置包括:待创建位置确定模块1101、添加模块1102、场景更新信息获取模块1103。
待创建位置确定模块1101,用于响应于第一终端的虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上。
添加模块1102,用于响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,在虚拟建造场景中添加目标虚拟建筑元素。
场景更新信息获取模块1103,用于获取场景更新信息,场景更新信息用于指示在虚拟建造场景的多个复制场景中添加目标虚拟建筑元素。
添加模块1102,还用于响应于场景更新信息,在显示于第一终端的复制场景中,添加目标虚拟建筑元素。
在一种可能的实施方式中,添加模块,用于响应于虚拟建造场景的待创建位置上不存在虚拟建筑元素,通过与虚拟建造场景关联的目标进程,将目标虚拟建筑元素的创建数据添加入虚拟建造场景的构成数据中,创建数据包括目标虚拟建筑元素在虚拟建造场景中的位置以及目标虚拟建筑元素的形状和尺寸。
在一种可能的实施方式中,装置还包括:
虚拟资源确定模块,用于响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建目标虚拟建筑元素所需的虚拟资源的数量,执行在虚拟建造场景中添加目标虚拟建筑元素的步骤,第一虚拟对象为第一终端控制的虚拟对象。
在一种可能的实施方式中,装置还包括:
虚拟资源扣除模块,用于通过与显示于第一终端的复制场景关联的第一进程,对第一虚拟对象具有的虚拟资源进行扣除。
在一种可能的实施方式中,装置还包括:
摆放规则确定模块,用于响应于虚拟建造场景的待创建位置符合虚拟建造场景的虚拟建筑元素摆放规则,执行在虚拟建造场景中添加目标虚拟建筑元素步骤,虚拟建筑元素摆放规则用于表示第一虚拟场景中虚拟建筑元素之间的相对位置关系。
在一种可能的实施方式中,装置还包括:
虚拟建造场景确定模块,用于响应于虚拟建造场景符合目标状态条件,通过与虚拟建造场景关联的目标进程向与显示于第一终端的复制场景关联的第一进程发送第一锁标识,第一锁标识表示存在通过第一进程,在虚拟建造场景上创建虚拟建筑元素的请求。响应于第一进程接收到第一锁标识,通过第一进程向目标进程发送第一进程接收到的锁标识。通过目标进程接收第一进程发送的锁标识,响应于目标进程确定第一进程发送的锁标识与第一锁标识相同,通过目标进程在虚拟建造区域中添加目标虚拟建筑元素,执行在虚拟建造场景中,添加目标虚拟建筑元素的步骤。
在一种可能的实施方式中,虚拟建造场景符合目标状态条件是指下述至少一项:
虚拟建造场景处于可建造状态。
目标进程未向任一进程发送第一锁标识。
虚拟建造场景的版本标识与显示于第一终端的复制场景的版本标识相同。
在一种可能的实施方式中,虚拟建造场景确定模块,还用于响应于目标进程在目标时长内未接收到锁标识,不再执行在虚拟建造场景中添加目标虚拟建筑元素的步骤。
在一种可能的实施方式中,装置还包括:
版本标识确定模块,用于通过第一进程向目标进程发送显示于第一终端的复制场景的版本标识,响应于目标进程确定显示于第一终端的复制场景的版本标识与虚拟建造场景的版本标识相同,执行在虚拟建造场景中添加目标虚拟建筑元素的步骤。
在一种可能的实施方式中,装置还包括:
发送模块,用于将场景更新信息发送给第二服务器,通过第二服务器在显示于第二终端的复制场景中,添加目标虚拟建筑元素。
在一种可能的实施方式中,发送模块,用于通过与虚拟建造场景关联的目标进程,向由第二服务器上的第二进程发送场景更新信息。第二服务器通过第二进程,将目标虚拟建筑元素的创建数据添加入显示于第二终端的复制场景的构成数据中。
在一种可能的实施方式中,添加模块还用于,响应于虚拟建造场景的待创建位置上存在虚拟建筑元素,在显示于第一终端的复制场景中添加错误提示。
在一种可能的实施方式中,添加模块还用于,通过与虚拟建造场景关联的目标进程,向与显示于第一终端的复制场景关联的第一进程发送与错误提示关联的错误信息。通过第一进程接收错误信息,由第一进程在显示于第一终端的复制场景中添加错误提示。
通过本申请提供的技术方案,由于在接入不同服务器的终端上进行显示时,都是基于同一个虚拟建造场景的复制场景进行的,因此,在需要创建庄园的时候,第一服务器可以基于原始版本的虚拟建造场景进行是否重叠的判断,在确认不重叠的情况下,对原始版本的虚拟建造进行修改,再将修改同步到各个复制场景里,就能够实现处于不同服务器的用户共同建造同一个庄园的方案,提高了人机交互的效率,进而提高了用户的游戏体验。
上述计算机设备可以实现为服务器,下面对服务器的结构进行介绍:
图12是本申请实施例提供的一种服务器的结构示意图,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1201和一个或多个的存储器1202,其中,所述一个或多个存储器1202中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器1201加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器1200还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1200还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括程序代码的存储器,上述程序代码可由处理器执行以完成上述实施例中的虚拟场景的显示方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述虚拟场景的显示方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来程序代码相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (32)

1.一种虚拟场景的显示方法,其特征在于,应用于第一服务器,所述方法包括:
响应于第一终端的虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,所述虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上;
响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,响应于所述虚拟建造场景符合目标状态条件,通过与所述虚拟建造场景关联的目标进程向与显示于所述第一终端的复制场景关联的第一进程发送第一锁标识,所述第一锁标识表示存在通过所述第一进程,在所述虚拟建造场景上创建虚拟建筑元素的请求;
其中,所述虚拟建造场景符合目标状态条件包括所述虚拟建造场景的版本标识与所述显示于所述第一终端的复制场景的版本标识相同和下述至少一项:所述虚拟建造场景处于可建造状态;所述目标进程未向任一进程发送所述第一锁标识;
响应于所述第一进程接收到所述第一锁标识,通过所述第一进程向所述目标进程发送所述第一进程接收到的锁标识;
通过所述目标进程接收所述第一进程发送的锁标识,响应于所述目标进程确定所述第一进程发送的锁标识与所述第一锁标识相同,通过所述目标进程在虚拟建造区域中添加所述目标虚拟建筑元素,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤;
获取场景更新信息,所述场景更新信息用于指示在所述虚拟建造场景的多个复制场景中添加所述目标虚拟建筑元素;
响应于所述场景更新信息,在显示于所述第一终端的复制场景中,添加所述目标虚拟建筑元素,以及,将所述场景更新信息发送给第二服务器,通过所述第二服务器在显示于第二终端的复制场景中,添加所述目标虚拟建筑元素。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述虚拟建造场景的所述待创建位置上不存在所述虚拟建筑元素,通过与所述虚拟建造场景关联的目标进程,将所述目标虚拟建筑元素的创建数据添加入所述虚拟建造场景的构成数据中,所述创建数据包括所述目标虚拟建筑元素在所述虚拟建造场景中的位置以及所述目标虚拟建筑元素的形状和尺寸。
3.根据权利要求1所述的方法,其特征在于,所述在所述虚拟建造场景中添加所述目标虚拟建筑元素之前,所述方法还包括:
响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建所述目标虚拟建筑元素所需的虚拟资源的数量,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述第一虚拟对象为所述第一终端控制的虚拟对象。
4.根据权利要求3所述的方法,其特征在于,所述执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤之前,所述方法还包括:
通过与所述显示于所述第一终端的复制场景关联的第一进程,对所述第一虚拟对象具有的虚拟资源进行扣除。
5.根据权利要求1所述的方法,其特征在于,所述在所述虚拟建造场景中添加所述目标虚拟建筑元素之前,所述方法还包括:
响应于所述虚拟建造场景的所述待创建位置符合所述虚拟建造场景的虚拟建筑元素摆放规则,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述虚拟建筑元素摆放规则用于表示第一虚拟场景中虚拟建筑元素之间的相对位置关系。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述目标进程在目标时长内未接收到锁标识,不再执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
7.根据权利要求1所述的方法,其特征在于,所述执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤之前,所述方法还包括:
通过所述第一进程向所述目标进程发送所述显示于所述第一终端的复制场景的版本标识,响应于所述目标进程确定所述显示于所述第一终端的复制场景的版本标识与所述虚拟建造场景的版本标识相同,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
8.根据权利要求1所述的方法,其特征在于,所述将所述场景更新信息发送给第二服务器,通过所述第二服务器在显示于第二终端的复制场景中,添加所述目标虚拟建筑元素包括:
通过与所述虚拟建造场景关联的目标进程,向所述第二服务器上的第二进程发送所述场景更新信息,所述第二进程与所述显示于第二终端的复制场景相关联;
所述第二服务器通过所述第二进程,将所述目标虚拟建筑元素的创建数据添加入所述显示于所述第二终端的复制场景的构成数据中。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述虚拟建造场景的所述待创建位置上存在虚拟建筑元素,在所述显示于所述第一终端的复制场景中添加错误提示。
10.根据权利要求9所述的方法,其特征在于,所述在所述显示于所述第一终端的复制场景中添加错误提示包括:
通过与所述虚拟建造场景关联的目标进程,向与所述显示于所述第一终端的复制场景关联的第一进程发送与所述错误提示关联的错误信息;
通过所述第一进程接收所述错误信息,由所述第一进程在所述显示于所述第一终端的复制场景中添加所述错误提示。
11.一种虚拟场景的显示系统,其特征在于,所述系统包括:第一终端以及第一服务器;
所述第一终端用于向所述第一服务器发送虚拟建筑创建请求;
所述第一服务器用于响应于接收到所述虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,所述虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上;
所述第一服务器还用于响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,响应于所述虚拟建造场景符合目标状态条件,通过与所述虚拟建造场景关联的目标进程向与显示于所述第一终端的复制场景关联的第一进程发送第一锁标识,所述第一锁标识表示存在通过所述第一进程,在所述虚拟建造场景上创建虚拟建筑元素的请求;其中,所述虚拟建造场景符合目标状态条件包括所述虚拟建造场景的版本标识与所述显示于所述第一终端的复制场景的版本标识相同和下述至少一项:所述虚拟建造场景处于可建造状态;所述目标进程未向任一进程发送所述第一锁标识;响应于所述第一进程接收到所述第一锁标识,通过所述第一进程向所述目标进程发送所述第一进程接收到的锁标识;通过所述目标进程接收所述第一进程发送的锁标识,响应于所述目标进程确定所述第一进程发送的锁标识与所述第一锁标识相同,通过所述目标进程在虚拟建造区域中添加所述目标虚拟建筑元素,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤;
所述第一服务器还用于获取场景更新信息,所述场景更新信息用于指示在所述虚拟建造场景的多个复制场景中添加所述目标虚拟建筑元素;
所述第一服务器还用于响应于所述场景更新信息,在显示于所述第一终端的复制场景中,添加所述目标虚拟建筑元素,以及,将所述场景更新信息发送给第二服务器,通过所述第二服务器在显示于第二终端的复制场景中,添加所述目标虚拟建筑元素;
所述第一终端还用于显示添加所述目标虚拟建筑元素的复制场景。
12.根据权利要求11所述的系统,其特征在于,所述第一服务器,还用于响应于所述虚拟建造场景的所述待创建位置上不存在所述虚拟建筑元素,通过与所述虚拟建造场景关联的目标进程,将所述目标虚拟建筑元素的创建数据添加入所述虚拟建造场景的构成数据中,所述创建数据包括所述目标虚拟建筑元素在所述虚拟建造场景中的位置以及所述目标虚拟建筑元素的形状和尺寸。
13.根据权利要求11所述的系统,其特征在于,所述第一服务器,还用于响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建所述目标虚拟建筑元素所需的虚拟资源的数量,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述第一虚拟对象为所述第一终端控制的虚拟对象。
14.根据权利要求13所述的系统,其特征在于,所述第一服务器,还用于通过与所述显示于所述第一终端的复制场景关联的第一进程,对所述第一虚拟对象具有的虚拟资源进行扣除。
15.根据权利要求11所述的系统,其特征在于,所述第一服务器,还用于响应于所述虚拟建造场景的所述待创建位置符合所述虚拟建造场景的虚拟建筑元素摆放规则,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述虚拟建筑元素摆放规则用于表示第一虚拟场景中虚拟建筑元素之间的相对位置关系。
16.根据权利要求11所述的系统,其特征在于,所述第一服务器,还用于响应于所述目标进程在目标时长内未接收到锁标识,不再执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
17.根据权利要求11所述的系统,其特征在于,所述第一服务器,还用于通过所述第一进程向所述目标进程发送所述显示于所述第一终端的复制场景的版本标识,响应于所述目标进程确定所述显示于所述第一终端的复制场景的版本标识与所述虚拟建造场景的版本标识相同,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
18.根据权利要求11所述的系统,其特征在于,所述系统还包括第二服务器;
所述第一服务器,还用于通过与所述虚拟建造场景关联的目标进程,向所述第二服务器上的第二进程发送所述场景更新信息,所述第二进程与所述显示于第二终端的复制场景相关联;
所述第二服务器,用于通过所述第二进程,将所述目标虚拟建筑元素的创建数据添加入所述显示于所述第二终端的复制场景的构成数据中。
19.根据权利要求11所述的系统,其特征在于,所述第一服务器,还用于响应于所述虚拟建造场景的所述待创建位置上存在虚拟建筑元素,在所述显示于所述第一终端的复制场景中添加错误提示。
20.根据权利要求19所述的系统,其特征在于,所述第一服务器,还用于通过与所述虚拟建造场景关联的目标进程,向与所述显示于所述第一终端的复制场景关联的第一进程发送与所述错误提示关联的错误信息;通过所述第一进程接收所述错误信息,由所述第一进程在所述显示于所述第一终端的复制场景中添加所述错误提示。
21.一种虚拟场景的显示装置,其特征在于,所述装置包括:
待创建位置确定模块,用于响应于第一终端的虚拟建筑创建请求,确定目标虚拟建筑元素在虚拟建造场景中的待创建位置,所述虚拟建造场景存在多个复制场景,不同复制场景用于显示于接入不同服务器的终端上;
添加模块,用于响应于所述虚拟建造场景的所述待创建位置上不存在虚拟建筑元素,在所述虚拟建造场景中添加所述目标虚拟建筑元素;
虚拟建造场景确定模块,用于响应于所述虚拟建造场景符合目标状态条件,通过与所述虚拟建造场景关联的目标进程向与显示于所述第一终端的复制场景关联的第一进程发送第一锁标识,所述第一锁标识表示存在通过所述第一进程,在所述虚拟建造场景上创建虚拟建筑元素的请求;其中,所述虚拟建造场景符合目标状态条件包括所述虚拟建造场景的版本标识与所述显示于所述第一终端的复制场景的版本标识相同和下述至少一项:所述虚拟建造场景处于可建造状态;所述目标进程未向任一进程发送所述第一锁标识;响应于所述第一进程接收到所述第一锁标识,通过所述第一进程向所述目标进程发送所述第一进程接收到的锁标识;通过所述目标进程接收所述第一进程发送的锁标识,响应于所述目标进程确定所述第一进程发送的锁标识与所述第一锁标识相同,通过所述目标进程在虚拟建造区域中添加所述目标虚拟建筑元素,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤;
场景更新信息获取模块,用于获取场景更新信息,所述场景更新信息用于指示在所述虚拟建造场景的多个复制场景中添加所述目标虚拟建筑元素;
所述添加模块,还用于响应于所述场景更新信息,在显示于所述第一终端的复制场景中,添加所述目标虚拟建筑元素;
发送模块,用于将所述场景更新信息发送给第二服务器,通过所述第二服务器在显示于第二终端的复制场景中,添加所述目标虚拟建筑元素。
22.根据权利要求21所述的装置,其特征在于,所述添加模块,还用于:
响应于所述虚拟建造场景的所述待创建位置上不存在所述虚拟建筑元素,通过与所述虚拟建造场景关联的目标进程,将所述目标虚拟建筑元素的创建数据添加入所述虚拟建造场景的构成数据中,所述创建数据包括所述目标虚拟建筑元素在所述虚拟建造场景中的位置以及所述目标虚拟建筑元素的形状和尺寸。
23.根据权利要求21所述的装置,其特征在于,所述装置还包括:
虚拟资源确定模块,用于响应于第一虚拟对象具有的虚拟资源的数量大于或等于创建所述目标虚拟建筑元素所需的虚拟资源的数量,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述第一虚拟对象为所述第一终端控制的虚拟对象。
24.根据权利要求23所述的装置,其特征在于,所述装置还包括:
虚拟资源扣除模块,用于通过与所述显示于所述第一终端的复制场景关联的第一进程,对所述第一虚拟对象具有的虚拟资源进行扣除。
25.根据权利要求21所述的装置,其特征在于,所述装置还包括:
摆放规则确定模块,用于响应于所述虚拟建造场景的所述待创建位置符合所述虚拟建造场景的虚拟建筑元素摆放规则,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤,所述虚拟建筑元素摆放规则用于表示第一虚拟场景中虚拟建筑元素之间的相对位置关系。
26.根据权利要求21所述的装置,其特征在于,所述虚拟建造场景确定模块,还用于响应于所述目标进程在目标时长内未接收到锁标识,不再执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
27.根据权利要求21所述的装置,其特征在于,所述装置还包括:
版本标识确定模块,用于通过所述第一进程向所述目标进程发送所述显示于所述第一终端的复制场景的版本标识,响应于所述目标进程确定所述显示于所述第一终端的复制场景的版本标识与所述虚拟建造场景的版本标识相同,执行在所述虚拟建造场景中添加所述目标虚拟建筑元素的步骤。
28.根据权利要求21所述的装置,其特征在于,所述发送模块,用于通过与所述虚拟建造场景关联的目标进程,向所述第二服务器上的第二进程发送所述场景更新信息,所述第二进程与所述显示于第二终端的复制场景相关联;所述第二服务器通过所述第二进程,将所述目标虚拟建筑元素的创建数据添加入所述显示于所述第二终端的复制场景的构成数据中。
29.根据权利要求21所述的装置,其特征在于,所述添加模块,还用于响应于所述虚拟建造场景的所述待创建位置上存在虚拟建筑元素,在所述显示于所述第一终端的复制场景中添加错误提示。
30.根据权利要求29所述的装置,其特征在于,所述添加模块,还用于:
通过与所述虚拟建造场景关联的目标进程,向与所述显示于所述第一终端的复制场景关联的第一进程发送与所述错误提示关联的错误信息;
通过所述第一进程接收所述错误信息,由所述第一进程在所述显示于所述第一终端的复制场景中添加所述错误提示。
31.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求10任一项所述的虚拟场景的显示方法。
32.一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如权利要求1至权利要求10任一项所述的虚拟场景的显示方法。
CN202010885647.2A 2020-08-28 2020-08-28 虚拟场景的显示方法、系统、装置、设备以及存储介质 Active CN111939565B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010885647.2A CN111939565B (zh) 2020-08-28 2020-08-28 虚拟场景的显示方法、系统、装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010885647.2A CN111939565B (zh) 2020-08-28 2020-08-28 虚拟场景的显示方法、系统、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN111939565A CN111939565A (zh) 2020-11-17
CN111939565B true CN111939565B (zh) 2023-09-26

Family

ID=73367137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010885647.2A Active CN111939565B (zh) 2020-08-28 2020-08-28 虚拟场景的显示方法、系统、装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN111939565B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112774202A (zh) * 2021-01-22 2021-05-11 北京字跳网络技术有限公司 虚拟空间建造方法、装置、电子设备以及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6539381B1 (en) * 1999-04-21 2003-03-25 Novell, Inc. System and method for synchronizing database information
CN101933014A (zh) * 2007-09-28 2010-12-29 阿珀蒂奥有限公司 用于复制和同步的系统和方法
CN102089760A (zh) * 2008-03-04 2011-06-08 苹果公司 同步服务器处理
CN111298431A (zh) * 2020-02-26 2020-06-19 网易(杭州)网络有限公司 一种游戏中的建造方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2027896A1 (fr) * 2007-08-20 2009-02-25 BARRET DE NAZARIS, Lionel Bruno Procédé et logiciel de simulation d'environnements citadins dynamiques modelés
US8255571B2 (en) * 2009-06-30 2012-08-28 Apple Inc. Updating multiple computing devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6539381B1 (en) * 1999-04-21 2003-03-25 Novell, Inc. System and method for synchronizing database information
CN101933014A (zh) * 2007-09-28 2010-12-29 阿珀蒂奥有限公司 用于复制和同步的系统和方法
CN102089760A (zh) * 2008-03-04 2011-06-08 苹果公司 同步服务器处理
CN111298431A (zh) * 2020-02-26 2020-06-19 网易(杭州)网络有限公司 一种游戏中的建造方法和装置

Also Published As

Publication number Publication date
CN111939565A (zh) 2020-11-17

Similar Documents

Publication Publication Date Title
JP7390400B2 (ja) 仮想オブジェクトの制御方法並びにその、装置、端末及びコンピュータプログラム
US11724191B2 (en) Network-based video game editing and modification distribution system
CN112569599B (zh) 虚拟场景中虚拟对象的控制方法、装置及电子设备
CN112416196B (zh) 虚拟对象的控制方法、装置、设备及计算机可读存储介质
US20220258061A1 (en) Dynamic modifications of single player and multiplayer mode in a video game
CN111686449A (zh) 虚拟对象的控制方法、装置、终端及存储介质
WO2023005522A1 (zh) 虚拟技能的控制方法、装置、设备、存储介质及程序产品
JP2024512582A (ja) 仮想アイテムの表示方法、装置、電子機器及びコンピュータプログラム
CN114377396A (zh) 一种游戏数据的处理方法、装置、电子设备及存储介质
CN113262488A (zh) 虚拟场景中虚拟对象的控制方法、装置、设备及存储介质
TWI821779B (zh) 虛擬對象的控制方法、裝置、計算機設備及儲存媒體
CN111939565B (zh) 虚拟场景的显示方法、系统、装置、设备以及存储介质
WO2023061133A1 (zh) 虚拟场景显示方法、装置、终端及存储介质
WO2023071808A1 (zh) 基于虚拟场景的图形显示方法、装置、设备以及介质
CN114307150B (zh) 虚拟对象之间的互动方法、装置、设备、介质及程序产品
CN115634449A (zh) 虚拟场景中控制虚拟对象的方法、装置、设备及产品
CN113144617B (zh) 虚拟对象的控制方法、装置、设备及计算机可读存储介质
CN112263834B (zh) 虚拟场景中的区域控制方法、装置、设备及存储介质
CN113952739A (zh) 游戏数据的处理方法、装置、电子设备及可读存储介质
CN113633968A (zh) 一种游戏中的信息展示方法、装置、电子设备及存储介质
WO2024027292A1 (zh) 虚拟场景中的交互方法、装置、电子设备、计算机可读存储介质及计算机程序产品
WO2023231557A1 (zh) 虚拟对象的互动方法、装置、设备、存储介质及程序产品
CN116983632A (zh) 虚拟场景的效果显示方法、装置、设备、介质及程序产品
CN113893522A (zh) 虚拟技能的控制方法、装置、设备、存储介质及程序产品
CN115089968A (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
GR01 Patent grant
GR01 Patent grant