CN111773701A - 游戏中水面平台建造方法及装置、电子设备、存储介质 - Google Patents
游戏中水面平台建造方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN111773701A CN111773701A CN202010743896.8A CN202010743896A CN111773701A CN 111773701 A CN111773701 A CN 111773701A CN 202010743896 A CN202010743896 A CN 202010743896A CN 111773701 A CN111773701 A CN 111773701A
- Authority
- CN
- China
- Prior art keywords
- area
- virtual model
- building
- game
- rasterized
- 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.)
- Granted
Links
Images
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/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
-
- 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/30—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 characterized by output arrangements for receiving control signals generated by the game device
- A63F2300/308—Details of the user interface
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开提供了一种游戏中水面平台建造方法及装置、电子设备、存储介质,涉及计算机技术领域,可以应用于包含水面平台的游戏场景。该游戏中水面平台建造方法包括:响应于在水面平台进行建造的触发操作,在游戏场景中生成与水面平台对应的栅格化可编辑区域;响应于对图形用户界面上提供的模型控件的建造操作,获取建造操作对应的虚拟模型的底部区域;结合建造操作以及底部区域将虚拟模型放置在栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。本公开实施例的技术方案可以使玩家在游戏中的水面平台上建造虚拟模型,提升游戏可玩性的同时,引导玩家进行建造,提升玩家的游戏体验。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种游戏中水面平台建造方法、游戏中水面平台建造装置、电子设备以及计算机可读存储介质。
背景技术
随着互联网技术的迅速发展,电子游戏越来越成为人们娱乐的主要形式。其中,建造类游戏越来越受到玩家们的广泛关注。
目前,移动端上的建造类游戏大多数都是在地面平台上进行建造,而对于“海洋”、“河流”等水面平台没有相关的建造方案,导致建造类游戏的真实性、趣味性较低。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种游戏中水面平台建造方法、游戏中水面平台建造装置、电子设备以及计算机可读存储介质,进而至少在一定程度上克服当前游戏中没有在水面平台建造的方案,导致建造类游戏的真实性、趣味性较低的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的第一方面,提供了一种游戏中水面平台建造方法,包括:
响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;
响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;
根据所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
在本公开的一些示例实施例中,基于前述方案,所述水面平台包括水面波浪;
所述在结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域之后,所述方法还包括:
根据所述水面波浪计算所述虚拟模型对应的浮动位移数据;
通过所述浮动位移数据控制所述虚拟模型随着所述水面波浪的变化进行浮动位移。
在本公开的一些示例实施例中,基于前述方案,所述模型控件包括地基控件,所述结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域,包括:
响应于作用于所述地基控件的建造操作,在所述栅格化可编辑区域上建造所述地基控件对应的虚拟地基;
结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述虚拟地基上。
在本公开的一些示例实施例中,基于前述方案,所述根据所述水面波浪计算所述虚拟模型对应的浮动位移数据,包括:
根据已建造的所述虚拟地基确定采样点,并获取所述采样点对应的所述水面波浪的动态波浪坐标;
通过所述动态波浪坐标计算所述虚拟模型对应的浮动位移数据。
在本公开的一些示例实施例中,基于前述方案,通过所述动态波浪坐标计算所述虚拟模型对应的浮动位移数据,包括:
通过所述动态波浪坐标计算所述虚拟模型对应的上下浮动速度和左右旋转值;
根据所述上下浮动速度和所述左右旋转值计算所述虚拟模型对应的浮动位移数据。
在本公开的一些示例实施例中,基于前述方案,所述栅格化可编辑区域包括点形区域、线性区域和方格形区域;
所述结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域,还包括:
将所述栅格化可编辑区域中被所述底部区域占用的点形区域、线性区域或者方格形区域中的一个或者多个区域设置为已占用区域。
在本公开的一些示例实施例中,基于前述方案,在结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域之前,所述方法还包括:
检测所述底部区域在放置时是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域在放置时需要占用所述已占用区域,将所述已占用区域进行标识处理以提示所述虚拟模型不能放置在所述已占用区域。
在本公开的一些示例实施例中,基于前述方案,所述结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域,还包括:
响应于对所述虚拟建造物的旋转操作,根据预设旋转角度以及所述旋转操作控制所述虚拟模型进行旋转;以及
检测旋转后的所述虚拟模型对应的所述底部区域是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域不需要占用所述已占用区域,根据所述旋转操作对应的旋转角度以及旋转后的所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域。
根据本公开实施例的第二方面,提供了一种游戏中水面平台建造装置,包括:
栅格化区域生成模块,用于响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;
底部区域获取模块,用于响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;
虚拟模型建造模块,用于结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
在本公开的一种示例性实施例中,基于前述方案,所述游戏中水面平台建造装置还包括浮动位移计算单元,所述浮动位移计算单元被配置为:
根据所述水面波浪计算所述虚拟模型对应的浮动位移数据;
通过所述浮动位移数据控制所述虚拟模型随着所述水面波浪的变化进行浮动位移。
在本公开的一种示例性实施例中,基于前述方案,所述虚拟模型建造模块还包括虚拟地基建造单元,所述虚拟地基建造单元被配置为:
响应于作用于所述地基控件的建造操作,在所述栅格化可编辑区域上建造所述地基控件对应的虚拟地基;
结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述虚拟地基上。
在本公开的一种示例性实施例中,基于前述方案,所述浮动位移计算单元还被配置为:
根据已建造的所述虚拟地基确定采样点,并获取所述采样点对应的所述水面波浪的动态波浪坐标;
通过所述动态波浪坐标计算所述虚拟模型对应的浮动位移数据。
在本公开的一种示例性实施例中,基于前述方案,所述浮动位移计算单元还被配置为:
通过所述动态波浪坐标计算所述虚拟模型对应的上下浮动速度和左右旋转值;
根据所述上下浮动速度和所述左右旋转值计算所述虚拟模型对应的浮动位移数据。
在本公开的一种示例性实施例中,基于前述方案,所述虚拟模型建造模块还包括已占用区域设置单元,所述已占用区域设置单元被配置为:
将所述栅格化可编辑区域中被所述底部区域占用的点形区域、线性区域或者方格形区域中的一个或者多个区域设置为已占用区域。
在本公开的一种示例性实施例中,基于前述方案,所述游戏中水面平台建造装置还包括已占用提示单元,所述已占用提示单元被配置为:
检测所述底部区域在放置时是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域在放置时需要占用所述已占用区域,将所述已占用区域进行标识处理以提示所述虚拟模型不能放置在所述已占用区域。
在本公开的一种示例性实施例中,基于前述方案,所述虚拟模型建造模块还包括旋转单元,所述旋转单元被配置为:
响应于对所述虚拟建造物的旋转操作,根据预设旋转角度以及所述旋转操作控制所述虚拟模型进行旋转;以及
检测旋转后的所述虚拟模型对应的所述底部区域是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域不需要占用所述已占用区域,根据所述旋转操作对应的旋转角度以及旋转后的所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域。
根据本公开实施例的第三方面,提供了一种电子设备,包括:处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述任意一项所述的游戏中水面平台建造方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据上述任意一项所述的游戏中水面平台建造方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开的示例实施例中的游戏中水面平台建造方法,响应触发操作,生成与水面平台对应的栅格化可编辑区域;响应于对提供的模型控件的建造操作,获取建造操作对应的虚拟模型的底部区域;结合建造操作以及底部区域将虚拟模型放置在栅格化可编辑区域以完成在水面平台建造虚拟模型。一方面,在水面平台生成栅格化可编辑区域,并结合玩家的建造操作以及虚拟模型的底部区域将虚拟模型放置在栅格化可编辑区域上,实现在水面平台建造物体,提升建造类游戏的真实性、趣味性;另一方面,通过栅格化可编辑区域引导玩家进行规则的建筑物建造,提升玩家的游戏体验,同时通过栅格化可编辑区域进行建造,能够有效节省系统的计算资源,降低建造操作的响应时间,提升建造生成效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本公开的一些实施例的游戏中水面平台建造方法的流程示意图;
图2示意性示出了根据本公开的一些实施例的计算虚拟模型在水面波浪上的浮动位移的流程示意图;
图3示意性示出了根据本公开的一些实施例的根据动态波浪坐标计算浮动位移数据的流程示意图;
图4示意性示出了根据本公开的一些实施例的旋转虚拟模型的判断逻辑示意图;
图5示意性示出了根据本公开的一些实施例的水面平台建造类游戏的场景示意图;
图6示意性示出了根据本公开的一些实施例的水面平台对应的栅格化可编辑区域的示意图;
图7示意性示出了根据本公开的一些实施例的虚拟地基对应放置后生成区域的示意图;
图8示意性示出了根据本公开的一些实施例的栅格化可编辑区域中点形区域、线形区域、虚拟门框对应放置后生成区域的示意图;
图9示意性示出了根据本公开的一些实施例的先决区域和已占用区域的示意图;
图10示意性示出了根据本公开的一些实施例的旋转虚拟模型的示意图;
图11示意性示出了根据本公开的一些实施例的游戏中水面平台建造装置的示意图;
图12示意性示出了根据本公开的一些实施例的电子设备的计算机系统的结构示意图;
图13示意性示出了根据本公开的一些实施例的计算机可读存储介质的示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
此外,附图仅为示意性图解,并非一定是按比例绘制。附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在本公开其中一种实施例中的游戏中水面平台建造方法可以运行于终端设备或者是服务器。其中,终端设备可以为本地终端设备。当游戏中水面平台建造方法运行于服务器时,该游戏中水面平台建造方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一可选的实施方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,游戏中水面平台建造方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的终端设备为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。
在一可选的实施方式中,终端设备可以为本地终端设备。以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。
在一可选的实施方式中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在本示例实施例中,首先提供了一种游戏中水面平台建造方法,通过终端设备提供图形用户界面通过执行软件应用并在终端的显示器上渲染得到图形用户界面,其中,终端设备可以是前述提到的本地终端设备,也可以是前述提到的云交互系统中的客户端设备。图1示意性示出了根据本公开的一些实施例的游戏中水面平台建造方法流程的示意图。参考图1所示,该游戏中水面平台建造方法可以包括以下步骤:
步骤S110,响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;
步骤S120,响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;
步骤S130,结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
根据本示例实施例中的游戏中水面平台建造方法,一方面,在水面平台生成栅格化可编辑区域,并结合玩家的建造操作以及虚拟模型的底部区域将虚拟模型放置在栅格化可编辑区域上,实现在水面平台建造物体,提升建造类游戏的真实性、趣味性;另一方面,通过栅格化可编辑区域引导玩家进行规则的建筑物建造,提升玩家的游戏体验,同时通过栅格化可编辑区域进行建造,能够有效节省系统的计算资源,降低建造操作的响应时间,提升建造效率。
下面,将对本示例实施例中的游戏中水面平台建造方法进行进一步的说明。
在步骤S110中,响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域。
在本公开的一个示例实施例中,水面平台可以是指游戏场景中在水面提供给玩家进行建造的场景平台,例如,在相关的建造类游戏场景中,可以将可建造区域分为平地,高山,草地,海洋,湖泊,河流等不同场景,其中,平地,高山,草地等地面场景可以被归类为可建造的地面平台,而海洋,湖泊,河流等水面场景可以被归类为可建造的水面平台,当然,此处仅是示意性说明,本示例实施例不以此为限。
触发操作可以是指用于玩家启动游戏中水面平台对应的建造系统的操作,例如,触发操作可以是玩家控制游戏角色移动到水面场景附近后,对触发显示的建造控件的选择操作(如可以是点击建造控件,也可以是长按建造控件,还可以是重力感应如摇晃移动终端的操作,本示例实施例不以此为限),还可以是控制游戏角色移动到游戏场景中提供的触发区域(如光圈)内,本示例实施例对此不做特殊限定。
栅格化可编辑区域可以是指预先设置的、覆盖水面平台、用于建造编辑的标准化栅格化区域,该栅格化可编辑区域可以由预设形状的隐藏网格(即不对玩家显示,但可用于规范玩家待放置的虚拟模型的位置的网格)构成,例如,栅格化可编辑区域可以是由正方形的隐藏网格所构成,也可以是由六边形的隐藏网格所构成,还可以是其他能够充分利用水面平台的面积区域、便于设计放置虚拟模型的预设形状隐藏网格所构成,本示例实施例不以此为限。
通过生成水面平台对应的栅格化可编辑区域,不仅能够规范玩家待放置的虚拟模型的位置,引导玩家进行建造,提升建筑物摆放的美观性,提升用户体验,而且能够通过设置栅格化可编辑区域,降低建造类游戏的开发成本,降低获取玩家建造操作数据的难度,提升玩家的建造效率,提高系统的响应效率。
在步骤S120中,响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域。
在本公开的一个示例实施例中,模型控件可以是指开发人员预先提供的、多种虚拟模型对应的控件,例如模型控件可以是虚拟地基(地板)控件,也可以是虚拟墙壁控件,还可以是虚拟制作台控件,图形用户界面上的模型控件还可以是其他类型虚拟模型对应的控件,具体可以由开发人员提供或者由玩家自定义设置,本示例实施例不以此为限。
建造操作可以是指玩家通过图形用户界面以及图形用户界面上提供的模型控件进行的一系列用于建造的操作,例如,建造操作可以是玩家点击虚拟墙壁控件以在游戏场景中生成虚拟墙壁、然后通过在图形用户界面上的滑动操作控制虚拟墙壁选择在栅格化可编辑区域中的放置位置的操作,还可以是(如在模型控件较多时)滑动模型控件对应的虚拟滚轮选中虚拟墙壁控件的选择操作、然后通过重力感应控制虚拟墙壁选择在栅格化可编辑区域中的放置位置的操作,本示例实施例对此不做特殊限定。
底部区域可以是指虚拟模型对应的模型底部所占用的面积区域,该底部区域的形状可以由与栅格化可编辑区域中隐藏网格相同的预设形状的网格的整数倍构成的,例如,如果所述栅格化可编辑区域是由正方形网格构成的,则虚拟模型对应的底部区域是由整数倍个正方形网格构成的。
通过将虚拟模型的底部区域设置为与栅格化可编辑区域中(整数倍的)网格的类似形状,便于引导玩家进行虚拟模型的摆放,同时在检测虚拟模型是否存在互相占用的逻辑时更加简便,降低计算量,提升系统响应速度。
在步骤S130中,结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
在本公开的一个示例实施例中,获取建造操作对应的、用于控制虚拟建造物移动的移动数据,例如,移动数据可以是玩家在图形用户界面上的滑动操作对应的移动轨迹坐标,也可以是玩家的重力感应的陀螺仪数据,本示例实施例不以此为限。
根据建造操作对应的移动数据控制虚拟模型移动,并根据虚拟模型底部区域对应的形状将虚拟模型放置到栅格化可编辑区域。在一实施例中,在虚拟模型的底部区域匹配栅格化可编辑区域中某块区域时,可以将虚拟模型“吸附”到匹配的位置,并在玩家继续移动后,将虚拟模型“吸附”到移动后匹配的位置。
在本公开的一个示例实施例中,模型控件可以包括地基控件,响应于作用于地基控件的建造操作,在栅格化可编辑区域上建造地基控件对应的虚拟地基,结合建造操作以及底部区域将虚拟模型放置在虚拟地基上。
其中,建造操作与玩家对提供的模型控件的建造操作是相同操作,此处不再赘述。虚拟地基可以是指用于放置在水面平台上、用于承载虚拟模型的、与栅格化可编辑区域对应的网格形状相同的虚拟地板或者虚拟皮筏、虚拟漂浮物等虚拟模型。
通过设置虚拟地基,使游戏中在水面平台的建造虚拟模型更加符合真实场景,提高游戏的真实感。
在一实施例中,可以在开发阶段将虚拟地基与虚拟模型结合在一起,即可以简单理解为在虚拟模型的底部区域构建与底部区域形状相同的虚拟地基的模型,这样,玩家可以在放置虚拟模型的同时将虚拟地基放置在水面平台对应的栅格化可编辑区域。当然,虚拟地基与虚拟模型的分拆或者结合,玩家可以在游戏中进行自定义设置,本实施例对此不做特殊限定。
在本公开的一个示例实施例中,水面平台可以包括水面波浪,该水面波浪是为了在游戏场景中模拟真实场景中的水浪,通过游戏引擎计算并渲染的虚拟水浪。
在结合建造操作以及底部区域将虚拟模型放置在栅格化可编辑区域之后,可以根据图2中的步骤计算虚拟模型的浮动位移,图2示意性示出了根据本公开的一些实施例的计算虚拟模型在水面波浪上的浮动位移的流程示意图:
参考图2所示,步骤S210,根据水面波浪计算虚拟模型对应的浮动位移数据;
步骤S220,通过浮动位移数据控制虚拟模型随着水面波浪的变化进行浮动位移。
其中,浮动位移数据可以是指水面波浪在变化时,为了使虚拟模型更加符合真实场景中的情况,使其随着水面波浪的变化进行浮动变化的数据,例如,浮动位移数据可以包括随水面波浪上下浮动产生的上下浮动位移、随水面波浪左右推动产生的左右浮动位移以及由左右推动产生的左右浮动位移影响产生的旋转位移数据。在计算浮动位移数据时,可以根据上下浮动位移、左右浮动位移和旋转位移数据中的一种或者多种位移组合生成浮动位移数据,本示例实施例对此不做特殊限定。
根据水面波浪计算虚拟模型对应的浮动位移数据,使虚拟模型随着水面波浪的变化进行浮动位移,能够使虚拟模型的上下左右起伏与水面波浪一致,进一步保证游戏内容的真实感,提升玩家的游戏体验。
具体的,可以根据已建造的虚拟地基确定采样点,并获取采样点对应的水面波浪的动态波浪坐标;通过动态波浪坐标计算虚拟模型对应的浮动位移数据。
其中,动态波浪坐标可以是指采样点处对应的水面波浪表面对应的游戏场景空间坐标,该坐标会随着水面波浪表面的变化进行动态变化。可以根据已建造的虚拟地基的分布位置以及已建造的虚拟地基的数量,通过预设的随机算法随机分配采样点,然后获取采样点对应的水面波浪的动态波浪坐标,进而根据动态波浪坐标计算虚拟模型对应的浮动位移数据。在示例实施例中,优选的,在考虑移动终端性能的前提下,采样点(samplePosition)可以使用5个采样点,即可以是虚拟模型的中心点以及虚拟模型的四个角落对应的点。
通过已建造的虚拟地基设置采样点,并基于采样点计算海浪坐标,这样,能够在保证虚拟模型与水面波浪的上下左右起伏同步的同时,有效降低海浪坐标的计算量,提升游戏引擎的计算、渲染效率,降低系统的计算性能压力。
在本公开的一个示例实施例中,具体可以通过图3中的步骤基于动态波浪坐标计算虚拟模型的浮动位移数据,图3示意性示出了根据本公开的一些实施例的根据动态波浪坐标计算浮动位移数据的流程示意图:
参考图3所示,步骤S310,通过动态波浪坐标计算虚拟模型对应的上下浮动速度和左右旋转值;
步骤S320,根据上下浮动速度和左右旋转值计算虚拟模型对应的浮动位移数据。
其中,上下浮动速度可以是指虚拟模型随着水面波浪起伏的变化进行上下浮动的速度,例如,可以是在水面波浪对应的“浪花”较大时,虚拟模型的上下浮动速度较快,可以是在水面波浪对应的“浪花”较小时,虚拟模型的上下浮动速度较慢。
上下浮动速度的计算可以通过以下关系式(1)进行表示:
fspeed(n)=fspeed(n-1)+(ffloat+ffriction-gravity)*dt*fdecay (1)
其中,gravity可以表示预先设置的重力加速度,dt可以表示游戏逻辑一帧所使用的时间,ffloat可以表示浮力加速度,浮力加速度可以通过以下关系式(2)进行表示:
其中,hocean(i)可以表示当前采样点处水面平台的高度(可以通过动态波浪坐标进行获取),hsample(i)可以表示当前采样点处水面波浪的高度(可以通过动态波浪坐标进行获取),n可以表示采样点的个数,floatK可以表示预先设置的用来计算浮力的参数值。
ffriction可以表示阻尼产生的加速度,其计算过程可以通过关系式(3)所示:
ffriction=-fspeed(n-1)2*floatFriction (3)
其中,floatFriction可以表示阻尼系数,浮动速度越快阻尼越大。
fdecay可以表示速度衰减比例,速度衰减比例可以通过以下关系式(4)进行表示:
fdecay=1-velDecay*dt (4)
其中,velDecay可以表示上下浮动衰减值,用以防止上下浮动速度过快的情况,值越大,上下浮动速度越低。
左右旋转值可以是指水面波浪的左右波浪推动虚拟模型时使虚拟模型产生旋转的数值,具体的,可以通过以下表达式(5)计算左右旋转值:
qn=slerp(qn-1,qocean,rotationRate*dt) (5)
其中,rotationRate可以表示水面波浪荡漾时旋转的力度,值越小旋转越小,该值为0时体现为平台只会上下荡,水平方向不会晃动。
qocean可以使用当前采样点的动态波浪坐标通过以下关系式(6)进行计算得到:
qocean=Quaternion.LookRotation(fowardocean) (6)
通过动态波浪坐标计算上下浮动速度和左右旋转值,并基于上下浮动速度和左右旋转值计算虚拟模型的浮动位移数据,这样,计算得到的浮动位移数据更加贴合水面波浪的变化,使虚拟模型的浮动与水面波浪的变化更加同步,进一步提升游戏的真实感。
在本公开的一个示例实施例中,栅格化可编辑区域可以包括点形区域、线形区域和方格形区域,可以将栅格化可编辑区域中被底部区域占用的点形区域、线性区域或者方格形区域中的一个或者多个区域设置为已占用区域。
其中,点形区域可以是指栅格化可编辑区域中预设形状的网格构成的交点区域,当然,点形区域也可以是指该交点处提供的(小)圆柱形区域(如可以用于放置虚拟柱子),还可以是该交点处提供的其它形状的较小区域,对此不做特殊限定。
线形区域可以是指栅格化可编辑区域中预设形状的网格的边线区域,当然,点形区域也可以是指该边线处提供的(小)矩形区域(如可以用于放置虚拟墙壁、虚拟门框等),本示例实施例对此不做特殊限定。
方格形区域即前面提到栅格化可编辑区域中预设形状的隐藏网格对应的区域,在此不再赘述。
通过将栅格化可编辑区域划分为点形区域、线形区域和方格形区域,能够有效提升建造的多样性,丰富建造系统中建筑物的种类,保证建造游戏的真实性与趣味性,提升玩家游戏体验。
优选的,栅格化可编辑区域还可以包括放置后生成区域,该放置后生成区域可以是指在将虚拟模型放置在栅格化可编辑区域之后、生成的与虚拟模型关联的可编辑区域,例如,放置后生成区域可以是将虚拟地基放置在栅格化可编辑区域后,在该虚拟地基(假设为矩形)周围四个方向生成四个与该虚拟地基关联的四个区域,用于在后续将放置在此四个区域的虚拟地基与已放置的虚拟地基进行连接的区域,也可以是将虚拟门框放置在栅格化可编辑区域后,在该虚拟门框上方生成的、用于放置虚拟天花板或者其他可于该虚拟门框相关联的其他虚拟模型,本示例实施例对此不做特殊限定。
通过设置与虚拟模型的放置后生成区域,提供给玩家无限的可能性(如通过放置后生成区域可以建造多层结构的建筑),进一步提升游戏的趣味性以及创造性,提升游戏对玩家的吸引性。
在本公开的一个示例实施例中,在结合建造操作以及底部区域将虚拟模型放置在栅格化可编辑区域之前,可以检测底部区域在放置时是否需要占用栅格化可编辑区域中的已占用区域;响应于底部区域在放置时需要占用已占用区域,将已占用区域进行标识处理以提示虚拟模型不能放置在已占用区域。
其中,已占用区域可以简单理解为放置虚拟模型后、虚拟模型的底部区域占用的区域(或者放置后栅格化可编辑区域中关闭的区域,即不可编辑区域)。
标识处理可以是指用于标识待放置的虚拟模型的底部区域、与栅格化可编辑区域中已放置的虚拟模型的底部区域产生占用冲突的区域的处理过程,例如,标识处理可以是将已占用区域进行标红显示的处理过程,也可以是将已占用区域进行高亮显示的处理过程,还可以是在图形用界面进行对话框提示的处理过程,本示例实施例对此不做特殊限定。
通过检测已占用区域并对已占用区域进行标识处理,不仅能够及时提醒玩家此处已不可进行建造,需要重新选择区域,及时引导玩家进行准确地建造,而且也能够避免将游戏中不同模型叠加在一起,造成模型“穿模”的问题。
优选的,可以将虚拟模型的底部区域需要在栅格化可编辑区域中占用的区域定义为先决区域,则放置时的判断逻辑可以是:
检测栅格化可编辑区域是否存在先决区域,若不存在或者已被占用则无法放置虚拟模型;
检测虚拟模型放置后需要占用的区域(即底部区域对应在栅格化可编辑区域中的区域),如果需要占用的区域中包括已占用区域则无法放置。
通过设置占用判断逻辑,使系统能够快速、准确地进行已占用区域判定,提升系统的响应速度。
在本公开的一个示例实施例中,还可以通过图4中的步骤将虚拟模型进行旋转后进行放置,图4示意性示出了根据本公开的一些实施例的旋转虚拟模型的判断逻辑示意图:
参考图4所示,步骤S410,响应于对虚拟建造物的旋转操作,根据预设旋转角度以及旋转操作控制虚拟模型进行旋转;以及
步骤S420,检测旋转后的虚拟模型对应的底部区域是否需要占用栅格化可编辑区域中的已占用区域;
步骤S430,响应于底部区域不需要占用已占用区域,根据旋转操作对应的旋转角度以及旋转后的底部区域将虚拟模型放置在栅格化可编辑区域。
其中,旋转操作可以是指玩家用于控制待放置的虚拟模型进行旋转以确定虚拟模型的合适朝向角度的操作,例如,旋转操作可以是玩家通过图形用户界面左右滑动以调整虚拟模型朝向的滑动操作,也可以是通过选择虚拟模型关联的旋转控件以调整虚拟模型朝向的点击操作,还可以是通过终端设备提供的未触发音量控制的音量侧键以调整虚拟模型朝向的按压操作,本示例实施例对此不做特殊限定。
预设旋转角度可以是指开发人员预先设置的虚拟模型的固定朝向角度,例如,虚拟模型的预设旋转角度可以是0°,90°,180°,270°四个角度,当然,预设旋转角度还可以是其他预先设置的、虚拟模型的固定朝向角度,本示例实施例不以此为限。
优选的,可以将虚拟模型的底部区域需要在栅格化可编辑区域中占用的区域定义为先决区域,则旋转时的判断逻辑可以是:
确定旋转后的虚拟模型对应的先决区域;
检测栅格化可编辑区域中是否存在先决区域,若不存在则旋转变换失败并进行提示处理;
检测栅格化可编辑区域中是否存在已占用区域,若存在且该已占用区域的占用者不是该虚拟模型,则旋转变换失败并进行提示处理。
通过设置预设旋转角度,有效减少系统需要根据玩家建造操作实时判断虚拟模型的朝向角度的计算量,提升建造操作的响应速度,同时,通过预设旋转角度结合旋转判断逻辑,进一步减少了根据玩家的建造操作进行建筑物转移的数据采集量以及计算量,提升游戏中建造操作的响应速度,提升游戏流畅度。
图5示意性示出了根据本公开的一些实施例的水面平台建造类游戏的场景示意图。
参考图5所示,在运行建造类游戏时,图形用户界面510渲染游戏画面,玩家控制游戏角色在游戏场景中的水面平台附近时触发水面平台建造系统,此时在水面平台生成栅格化可编辑区域520,当然,玩家可以自定义栅格化可编辑区域520进行显示或者隐藏,本示例实施例对此不做特殊限定。
可以通过图形用户界面510中提供的控件530进行辅助建造,该控件530可以包括蓝图控件,用于查看已建造虚拟模型的整体结构,也可以包括观察控件,用于拖动整个水面平台的显示角度,还可以包括模型控件,用于选择不同类型的虚拟模型对应的控件。具体的,玩家可以通过图形用户界面510上提供的摇杆控件540实现对虚拟模型的建造操作。
已构建的虚拟模型可以是多层结构(如通过虚拟门框放置后生成的放置后生成区域放置虚拟天花板以进一步构建二层建筑物),图形用户界面510中可以提供楼层控件550,通过楼层控件550可以控制对应层数的栅格化可编辑区域的打开或者关闭(或者控制当前显示的游戏画面视角,如点击1F控件,则游戏画面视角转到一层建筑物,点击2F控件则游戏画面视角转到二层建筑物)。
图6示意性示出了根据本公开的一些实施例的水面平台对应的栅格化可编辑区域的示意图。
参考图6所示,水面平台的建造系统具体还可以包括:
栅格化可编辑区域610,该区域是能够在水面平台放置虚拟模型的先决条件,即只有在生成栅格化可编辑区域的位置才可以放置虚拟模型;
可放置虚拟设施区域620,虚拟设施可以是虚拟建造台、虚拟休息台(床)等,本示例实施例不以此为限。该区域用于放置特殊的虚拟模型,即虚拟设施智能放在该区域;
可放置虚拟地基区域630,该区域是能够放置虚拟地基的先决条件,在本实施例中,未建造虚拟模型的栅格化可编辑区域610均可以放置虚拟地基;
线形区域640,该区域是基于栅格化可编辑区域610对应网格的边线构成的区域,可以用于放置虚拟墙壁、虚拟门框等线形占用的虚拟模型;
点形区域650,该区域是基于栅格化可编辑区域610对应网格的交点位置构成的区域,可以用于放置虚拟柱子等点形占用的虚拟模型。
图7示意性示出了根据本公开的一些实施例的虚拟地基对应放置后生成区域的示意图。
参考图7所示,先决区域710可以是玩家选择的用于放置虚拟地基720的先决条件,玩家在先决区域710放置虚拟地基720后,在虚拟地基720周围的四个方向生成放置后生成区域730,放置后生成区域730用于连续放置虚拟地基并将新放置的虚拟地基与虚拟地基720进行连接的区域。
图8示意性示出了根据本公开的一些实施例的栅格化可编辑区域中点形区域、线形区域、虚拟门框对应放置后生成区域的示意图。
参考图8所示,玩家在水面平台放置虚拟门框810后,虚拟门框810占用栅格化可编辑区域中的线形区域820以及点形区域830,此时将线形区域820以及点形区域830设置为已占用区域,不能被其他虚拟模型所占用,并在占用时进行标识处理。
在将虚拟门框810放置后,在虚拟门框810的上方生成与虚拟门框810关联的放置后生成区域840,通过放置后生成区域840可以在虚拟门框810继续建造二层建筑的虚拟地基以实现多层建筑的建造,提升玩家的游戏体验。
图9示意性示出了根据本公开的一些实施例的先决区域和已占用区域的示意图。
参考图9所示,玩家将虚拟设施(虚拟建造台)910放置在先决区域920(该区域对应虚拟设施910的底部区域)后,线形区域930被占用,此时线形区域930被设置为关闭区域,不在用于后续建造的已占用检测,提升建造效率。
图10示意性示出了根据本公开的一些实施例的旋转虚拟模型的示意图。
参考图10所示,玩家通过旋转操作将虚拟模型从朝向角度1010旋转到1020,检测旋转后的虚拟模型1020对应的底部区域是否需要占用栅格化可编辑区域中的已占用区域,如果底部区域不需要占用已占用区域,根据旋转操作对应的预设旋转角度、旋转后的底部区域以及网格的限制将虚拟模型放置在栅格化可编辑区域。通过预设旋转角度以及网格的限制,引导玩家旋转虚拟模型的角度,降低旋转角度控制的难度。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
此外,在本示例实施例中,还提供了一种游戏中水面平台建造装置。参照图11所示,该游戏中水面平台建造装置1100包括:栅格化区域生成模块1110、底部区域获取模块1120以及虚拟模型建造模块1130。其中:栅格化区域生成模块1110用于响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;底部区域获取模块1120用于响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;虚拟模型建造模块1130用于结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
通过栅格化区域生成模块1110生成水面平台对应的栅格化可编辑区域,不仅能够规范玩家待放置的虚拟模型的位置,引导玩家进行建造,提升建筑物摆放的美观性,提升用户体验,而且能够通过设置栅格化可编辑区域,降低建造类游戏的开发成本,降低获取玩家建造操作数据的难度,提升玩家的建造效率,提高系统的响应效率。
通过底部区域获取模块1120将虚拟模型的底部区域设置为与栅格化可编辑区域中(整数倍的)网格的类似形状,便于引导玩家进行虚拟模型的摆放,同时在检测虚拟模型是否存在互相占用的逻辑时更加简便,降低计算量,提升系统响应速度。
在本公开的一种示例性实施例中,基于前述方案,所述游戏中水面平台建造装置1100还包括浮动位移计算单元,所述浮动位移计算单元被配置为:
根据所述水面波浪计算所述虚拟模型对应的浮动位移数据;
通过所述浮动位移数据控制所述虚拟模型随着所述水面波浪的变化进行浮动位移。
基于浮动位移计算单元,根据水面波浪计算虚拟模型对应的浮动位移数据,使虚拟模型随着水面波浪的变化进行浮动位移,能够使虚拟模型的上下左右起伏与水面波浪一致,进一步保证游戏内容的真实感,提升玩家的游戏体验。
在本公开的一种示例性实施例中,基于前述方案,所述虚拟模型建造模块1130还包括虚拟地基建造单元,所述虚拟地基建造单元被配置为:
响应于作用于所述地基控件的建造操作,在所述栅格化可编辑区域上建造所述地基控件对应的虚拟地基;
结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述虚拟地基上。
通过虚拟地基建造单元设置虚拟地基,使游戏中在水面平台的建造虚拟模型更加符合真实场景,提高游戏的真实感。
在本公开的一种示例性实施例中,基于前述方案,所述浮动位移计算单元还被配置为:
根据已建造的所述虚拟地基确定采样点,并获取所述采样点对应的所述水面波浪的动态波浪坐标;
通过所述动态波浪坐标计算所述虚拟模型对应的浮动位移数据。
浮动位移计算单元通过已建造的虚拟地基设置采样点,并基于采样点计算海浪坐标,这样,能够在保证虚拟模型与水面波浪的上下左右起伏同步的同时,有效降低海浪坐标的计算量,提升游戏引擎的计算、渲染效率,降低系统的计算性能压力。
在本公开的一种示例性实施例中,基于前述方案,所述浮动位移计算单元还被配置为:
通过所述动态波浪坐标计算所述虚拟模型对应的上下浮动速度和左右旋转值;
根据所述上下浮动速度和所述左右旋转值计算所述虚拟模型对应的浮动位移数据。
浮动位移计算单元通过动态波浪坐标计算上下浮动速度和左右旋转值,并基于上下浮动速度和左右旋转值计算虚拟模型的浮动位移数据,这样,计算得到的浮动位移数据更加贴合水面波浪的变化,使虚拟模型的浮动与水面波浪的变化更加同步,进一步提升游戏的真实感。
在本公开的一种示例性实施例中,基于前述方案,所述虚拟模型建造模块1130还包括已占用区域设置单元,所述已占用区域设置单元被配置为:
将所述栅格化可编辑区域中被所述底部区域占用的点形区域、线性区域或者方格形区域中的一个或者多个区域设置为已占用区域。
已占用区域设置单元通过检测已占用区域并对已占用区域进行标识处理,不仅能够及时提醒玩家此处已不可进行建造,需要重新选择区域,及时引导玩家进行准确地建造,而且也能够避免将游戏中不同模型叠加在一起,造成模型“穿模”的问题。
在本公开的一种示例性实施例中,基于前述方案,所述游戏中水面平台建造装置1100还包括已占用提示单元,所述已占用提示单元被配置为:
检测所述底部区域在放置时是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域在放置时需要占用所述已占用区域,将所述已占用区域进行标识处理以提示所述虚拟模型不能放置在所述已占用区域。
通过已占用提示单元设置占用判断逻辑,使系统能够快速、准确地进行已占用区域判定,提升系统的响应速度。
在本公开的一种示例性实施例中,基于前述方案,所述虚拟模型建造模块1130还包括旋转单元,所述旋转单元被配置为:
响应于对所述虚拟建造物的旋转操作,根据预设旋转角度以及所述旋转操作控制所述虚拟模型进行旋转;以及
检测旋转后的所述虚拟模型对应的所述底部区域是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域不需要占用所述已占用区域,根据所述旋转操作对应的旋转角度以及旋转后的所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域。
通过旋转单元设置预设旋转角度,有效减少系统需要根据玩家建造操作实时判断虚拟模型的朝向角度的计算量,提升建造操作的响应速度,同时,通过预设旋转角度结合旋转判断逻辑,进一步减少了根据玩家的建造操作进行建筑物转移的数据采集量以及计算量,提升游戏中建造操作的响应速度,提升游戏流畅度。
上述中游戏中水面平台建造装置各模块的具体细节已经在对应的游戏中水面平台建造方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了游戏中水面平台建造装置的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述游戏中水面平台建造方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。
下面参照图12来描述根据本公开的这种实施例的电子设备1200。图12所示的电子设备1200仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图12所示,电子设备1200以通用计算设备的形式表现。电子设备1200的组件可以包括但不限于:上述至少一个处理单元1210、上述至少一个存储单元1220、连接不同系统组件(包括存储单元1220和处理单元1210)的总线1230、显示单元1240。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1210执行,使得所述处理单元1210执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,所述处理单元1210可以执行如图1中所示的步骤S110,响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;步骤S120,响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;步骤S130,结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
存储单元1220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)1221和/或高速缓存存储单元1222,还可以进一步包括只读存储单元(ROM)1223。
存储单元1220还可以包括具有一组(至少一个)程序模块1225的程序/实用工具1224,这样的程序模块1225包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备1200也可以与一个或多个外部设备1270(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1200交互的设备通信,和/或与使得该电子设备1200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1250进行。并且,电子设备1200还可以通过网络适配器1260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1260通过总线1230与电子设备1200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
参考图13所示,描述了根据本公开的实施例的用于实现上述游戏中水面平台建造方法的程序产品1300,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施例的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (11)
1.一种游戏中水面平台建造方法,其特征在于,通过终端显示图形用户界面,所述方法包括:
响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;
响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;
根据所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
2.根据权利要求1所述的游戏中水面平台建造方法,其特征在于,所述水面平台包括水面波浪;
所述在结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域之后,所述方法还包括:
根据所述水面波浪计算所述虚拟模型对应的浮动位移数据;
通过所述浮动位移数据控制所述虚拟模型随着所述水面波浪的变化进行浮动位移。
3.根据权利要求1所述的游戏中水面平台建造方法,其特征在于,所述模型控件包括地基控件,所述结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域,还包括:
响应于作用于所述地基控件的建造操作,在所述栅格化可编辑区域上建造所述地基控件对应的虚拟地基;
结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述虚拟地基上。
4.根据权利要求2或3任意一项所述的游戏中水面平台建造方法,其特征在于,所述根据所述水面波浪计算所述虚拟模型对应的浮动位移数据,包括:
根据已建造的所述虚拟地基确定采样点,并获取所述采样点对应的所述水面波浪的动态波浪坐标;
通过所述动态波浪坐标计算所述虚拟模型对应的浮动位移数据。
5.根据权利要求4所述的游戏中水面平台建造方法,其特征在于,通过所述动态波浪坐标计算所述虚拟模型对应的浮动位移数据,包括:
通过所述动态波浪坐标计算所述虚拟模型对应的上下浮动速度和左右旋转值;
根据所述上下浮动速度和所述左右旋转值计算所述虚拟模型对应的浮动位移数据。
6.根据权利要求1所述的游戏中水面平台建造方法,其特征在于,所述栅格化可编辑区域包括点形区域、线性区域和方格形区域;
所述结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域,还包括:
将所述栅格化可编辑区域中被所述底部区域占用的点形区域、线性区域或者方格形区域中的一个或者多个区域设置为已占用区域。
7.根据权利要求6所述的游戏中水面平台建造方法,其特征在于,在结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域之前,所述方法还包括:
检测所述底部区域在放置时是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域在放置时需要占用所述已占用区域,将所述已占用区域进行标识处理以提示所述虚拟模型不能放置在所述已占用区域。
8.根据权利要求6或7任意一项所述的游戏中水面平台建造方法,其特征在于,所述结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域,还包括:
响应于对所述虚拟建造物的旋转操作,根据预设旋转角度以及所述旋转操作控制所述虚拟模型进行旋转;以及
检测旋转后的所述虚拟模型对应的所述底部区域是否需要占用所述栅格化可编辑区域中的已占用区域;
响应于所述底部区域不需要占用所述已占用区域,根据所述旋转操作对应的旋转角度以及旋转后的所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域。
9.一种游戏中水面平台建造装置,其特征在于,包括:
栅格化区域生成模块,用于响应于在水面平台进行建造的触发操作,在游戏场景中生成与所述水面平台对应的栅格化可编辑区域;
底部区域获取模块,用于响应于对所述图形用户界面上提供的模型控件的建造操作,获取所述建造操作对应的虚拟模型的底部区域;
虚拟模型建造模块,用于结合所述建造操作以及所述底部区域将所述虚拟模型放置在所述栅格化可编辑区域以完成在所述水面平台建造所述虚拟模型。
10.一种电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求1至8中任一项所述的游戏中水面平台建造方法。
11.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的游戏中水面平台建造方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010743896.8A CN111773701B (zh) | 2020-07-29 | 2020-07-29 | 游戏中水面平台建造方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010743896.8A CN111773701B (zh) | 2020-07-29 | 2020-07-29 | 游戏中水面平台建造方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111773701A true CN111773701A (zh) | 2020-10-16 |
CN111773701B CN111773701B (zh) | 2023-10-20 |
Family
ID=72766511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010743896.8A Active CN111773701B (zh) | 2020-07-29 | 2020-07-29 | 游戏中水面平台建造方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111773701B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112717382A (zh) * | 2020-12-04 | 2021-04-30 | 网易(杭州)网络有限公司 | 游戏虚拟对象建造方法、装置、存储介质及计算机设备 |
CN113082701A (zh) * | 2021-04-15 | 2021-07-09 | 网易(杭州)网络有限公司 | 游戏城建方法及电子设备 |
CN113769380A (zh) * | 2021-09-22 | 2021-12-10 | 网易(杭州)网络有限公司 | 游戏中建筑物建造方法和装置、可读存储介质、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2925091A1 (en) * | 2013-09-27 | 2015-04-02 | Gree, Inc. | Method for controlling computer, control program and computer |
JP2016221305A (ja) * | 2016-08-03 | 2016-12-28 | 株式会社コロプラ | ゲームプログラム |
CN108230436A (zh) * | 2017-12-11 | 2018-06-29 | 网易(杭州)网络有限公司 | 三维场景中虚拟资源对象的渲染方法 |
CN208287445U (zh) * | 2018-05-31 | 2018-12-28 | 福州大学 | 一种基于虚拟现实技术的划船模拟装置 |
CN110152297A (zh) * | 2019-05-17 | 2019-08-23 | 网易(杭州)网络有限公司 | 虚拟资源的编辑方法及装置、存储介质、电子设备 |
-
2020
- 2020-07-29 CN CN202010743896.8A patent/CN111773701B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2925091A1 (en) * | 2013-09-27 | 2015-04-02 | Gree, Inc. | Method for controlling computer, control program and computer |
JP2016221305A (ja) * | 2016-08-03 | 2016-12-28 | 株式会社コロプラ | ゲームプログラム |
CN108230436A (zh) * | 2017-12-11 | 2018-06-29 | 网易(杭州)网络有限公司 | 三维场景中虚拟资源对象的渲染方法 |
CN208287445U (zh) * | 2018-05-31 | 2018-12-28 | 福州大学 | 一种基于虚拟现实技术的划船模拟装置 |
CN110152297A (zh) * | 2019-05-17 | 2019-08-23 | 网易(杭州)网络有限公司 | 虚拟资源的编辑方法及装置、存储介质、电子设备 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112717382A (zh) * | 2020-12-04 | 2021-04-30 | 网易(杭州)网络有限公司 | 游戏虚拟对象建造方法、装置、存储介质及计算机设备 |
CN113082701A (zh) * | 2021-04-15 | 2021-07-09 | 网易(杭州)网络有限公司 | 游戏城建方法及电子设备 |
CN113082701B (zh) * | 2021-04-15 | 2024-04-12 | 网易(杭州)网络有限公司 | 游戏城建方法及电子设备 |
CN113769380A (zh) * | 2021-09-22 | 2021-12-10 | 网易(杭州)网络有限公司 | 游戏中建筑物建造方法和装置、可读存储介质、电子设备 |
CN113769380B (zh) * | 2021-09-22 | 2024-07-09 | 网易(杭州)网络有限公司 | 游戏中建筑物建造方法和装置、可读存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111773701B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111773701B (zh) | 游戏中水面平台建造方法及装置、电子设备、存储介质 | |
US8784214B2 (en) | Method and system for establishing location-based leaderboard | |
US9761032B2 (en) | Avatar facial expression animations with head rotation | |
CN103797443A (zh) | 模拟三维特征 | |
CN105377381B (zh) | 移动装置游戏接口 | |
CN107977141A (zh) | 交互控制方法、装置、电子设备及存储介质 | |
CN102934145A (zh) | 图像处理装置、图像处理方法及图像处理程序 | |
CN108776544A (zh) | 增强现实中的交互方法及装置、存储介质、电子设备 | |
CN113487717A (zh) | 图片处理方法及装置、计算机可读存储介质、电子设备 | |
Grübel et al. | Fused twins: A cognitive approach to augmented reality media architecture | |
CN115375828B (zh) | 模型的阴影生成方法、装置、设备、介质 | |
Suárez et al. | An open source virtual globe framework for iOS, Android and WebGL compliant browser | |
JP2019121236A (ja) | プログラム、画像処理方法、及び画像処理装置 | |
CN114419322A (zh) | 一种图像实例分割方法、装置、电子设备及存储介质 | |
CN113384881A (zh) | 一种游戏中的地图显示方法及装置 | |
Gao et al. | [Retracted] Realization of Music‐Assisted Interactive Teaching System Based on Virtual Reality Technology | |
KR101951225B1 (ko) | 물리엔진을 사용하지 않는 리얼타임 렌더링 오브젝트 표현 방법 및 시스템 | |
CN115888081A (zh) | 虚拟路网生成方法及装置、存储介质及电子设备 | |
CN114028814A (zh) | 虚拟建筑升级方法及装置、计算机存储介质、电子设备 | |
JP2019121237A (ja) | プログラム、画像処理方法、及び画像処理装置 | |
Silva et al. | A lightweight 3D visualization and navigation system on handheld devices | |
Garcia et al. | Modifying a game interface to take advantage of advanced I/O devices | |
CN116228995B (zh) | 一种基于三维视图的装配式建筑显示方法及系统 | |
Hestman | The potential of utilizing bim models with the webgl technology for building virtual environments-a web-based prototype within the virtual hospital field | |
CN114247132B (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 |