CN115888103A - 游戏的显示控制方法、装置、计算机设备和介质 - Google Patents
游戏的显示控制方法、装置、计算机设备和介质 Download PDFInfo
- Publication number
- CN115888103A CN115888103A CN202211355524.3A CN202211355524A CN115888103A CN 115888103 A CN115888103 A CN 115888103A CN 202211355524 A CN202211355524 A CN 202211355524A CN 115888103 A CN115888103 A CN 115888103A
- Authority
- CN
- China
- Prior art keywords
- scene
- game
- color information
- scene area
- color
- 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
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请实施例公开了游戏的显示控制方法、装置、计算机设备和介质;本申请实施例获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域;对场景区域进行遮罩处理,得到场景区域对应的遮罩信息;根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息;根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息;由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。在本申请实施例中,可以根据场景区域对应的初始颜色信息以及遮罩信息,自动为不同深度级别的深度级别设置不同的颜色,以生成以不同颜色标示不同场景区域的平涂风格化的游戏地图。提升生成游戏地图的效率,同时也可以避免出错。
Description
技术领域
本申请涉及游戏技术领域,具体涉及游戏的显示控制方法、装置、计算机设备和介质。
背景技术
近年来,随着游戏技术的发展,游戏内容越来越多样化,逐渐丰富用户的日常生活。在一些游戏的游戏场景中,在游戏界面中显示有游戏地图,玩家可以通过观察游戏地图来了解游戏场景以及玩家在游戏场景中的位置。
现有技术中,通常都是由游戏开发人员对3D游戏场景进行分类、拍屏截图,获取到游戏场景的图片资源,再由获取到的图片资源叠加生成游戏场景地图。然而,这种方式需要人工处理、叠加图片资源,费时费力,不仅效率低,而且容易出错。
发明内容
本申请实施例提供游戏的显示控制方法、装置、计算机设备和介质,可以提升生成游戏地图效率,同时也可以避免出错。
本申请实施例提供一种游戏的显示控制方法,包括:获取游戏场景,所述游戏场景包括多个对应不同深度级别的场景区域;对所述场景区域进行遮罩处理,得到所述场景区域对应的遮罩信息;根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息;根据所述场景区域对应的初始颜色信息以及所述场景区域对应的遮罩信息,对所述场景区域设置对应的颜色信息;由所述场景区域生成游戏地图,所述游戏地图包括对应所述颜色信息的区块。
本申请实施例还提供一种游戏的显示控制装置,包括:场景获取单元,用于获取游戏场景,所述游戏场景包括多个对应不同深度级别的场景区域;遮罩处理单元,用于对所述场景区域进行遮罩处理,得到所述场景区域对应的遮罩信息;颜色获取单元,用于根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息;颜色设置单元,用于根据所述场景区域对应的初始颜色信息以及所述场景区域对应的遮罩信息,对所述场景区域设置对应的颜色信息;地图生成单元,用于由所述场景区域生成游戏地图,所述游戏地图包括对应所述颜色信息的区块。
本申请实施例还提供一种计算机设备,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行本申请实施例所提供的任一种游戏的显示控制方法中的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种游戏的显示控制方法中的步骤。
本申请实施例可以获取游戏场景,所述游戏场景包括多个对应不同深度级别的场景区域;对所述场景区域进行遮罩处理,得到所述场景区域对应的遮罩信息;根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息;根据所述场景区域对应的初始颜色信息以及所述场景区域对应的遮罩信息,对所述场景区域设置对应的颜色信息;由所述场景区域生成游戏地图,所述游戏地图包括对应所述颜色信息的区块。
在本申请中,在得到场景区域的遮罩信息后,可以根据场景区域对应的初始颜色信息以及遮罩信息,自动为不同深度级别的深度级别设置不同的颜色,以生成以不同颜色标示不同场景区域的平涂风格化的游戏地图,解决人工加工得到游戏地图造成的时间长、容易出错的问题,提升生成游戏地图的效率,同时也可以避免出错。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的游戏的显示控制方法的场景示意图;
图1b是本申请实施例提供的游戏的显示控制方法的流程示意图;
图1c是本申请实施例提供的确定基础颜色信息的流程示意图;
图1d是本申请实施例提供的确定多个场景区域对应的插值颜色信息的流程示意图;
图2a是本申请实施例提供的游戏的显示控制方法应用在游戏引擎的示意图;
图2b是本申请另一个实施例提供的游戏的显示控制方法的流程示意图;
图2c是本申请实施例提供的游戏场景的示意图;
图2d是本申请实施例提供的游戏地图的示意图;
图2e是本申请实施例提供的又一游戏地图的示意图;
图2f是本申请实施例提供的又一游戏地图的示意图;
图2g是本申请另一个实施例提供的确定多个场景区域对应的插值颜色信息的流程示意图;
图2h是本申请实施例提供的材质实例示意图;
图2i是本申请实施例提供的又一游戏地图的示意图;
图2j是现有技术生成游戏地图的方法的示意图;
图3是本申请实施例提供的游戏的显示控制装置的结构示意图;
图4是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在对本申请实施例进行详细地解释说明之前,先对本申请实施例涉及到的一些名词进行解释说明。
其中,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。其中,至少一个是指一个或一个以上,例如,至少一个场景区域可以是一个场景区域、两个场景区域、三个场景区域等任意大于等于一的整数个场景区域。而多个是指两个或者两个以上,例如,多个场景区域可以是两个场景区域、三个场景区域等任意大于等于二的整数个场景区域。
其中,游戏场景:是应用程序在终端上运行时显示(或提供)的游戏场景。该游戏场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。游戏场景可以是二维游戏场景、2.5维游戏场景或者三维游戏场景中的任意一种,本申请实施例对游戏场景的维度不加以限定。例如,游戏场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟角色在该游戏场景中进行移动。
其中,游戏地图:是指用于辅助游戏玩家确定他们所操作的角色在游戏世界中位置的地图,可以是常置于游戏界面边角的游戏小地图,也可以是通过操作预设控件后显示于游戏界面的游戏全景地图。游戏地图中展示的元素一般因游戏类型而异,具体可以是玩家角色、周围地形、盟军单位或结构、敌人、重要地点或道具。游戏地图可以运用线条、符号、颜色、文字注记等描绘显示游戏场景的自然地理等的图形。
其中,游戏界面:是指通过图形用户界面提供或显示的应用程序对应的界面,该界面中包括供用户进行交互的图形用户界面和游戏画面,该游戏画面是游戏场景的画面。
其中,游戏引擎:是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始。大部分都支持多种操作平台,如Linux、Mac OS X、微软Windows。游戏引擎包含以下系统:渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音效、脚本引擎、电脑动画、人工智能、网络引擎以及场景管理。
其中,Custom Stencil:是指自定义深度,可以将某些对象渲染到另一个深度缓冲区(称为自定义深度缓冲区)。
其中,Shader:是指着色器,用于游戏实时渲染。
其中,Render Target:是指渲染目标,可以在运行时写入的纹理。
其中,材质实例:是Shader的子对象,继承且不能修改Shader的计算逻辑,仅可以修改Shader暴露的参数。
其中,PostProcessVolume:是指后期处理体积,能够对影响颜色、色调映射、光照的属性和功能进行组合选择,从而定义场景的整体外观。
其中,SceneCapture2D:是指场景捕获组件,是UE4中能够捕获场景的工具。
本申请实施例提供游戏的显示控制方法、装置、计算机设备和介质。
其中,该游戏的显示控制装置具体可以集成在电子设备中,该电子设备可以为终端、服务器等设备。其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、或者个人电脑(Personal Computer,PC)等设备;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。
在一些实施例中,该游戏的显示控制装置还可以集成在多个电子设备中,比如,游戏的显示控制装置可以集成在多个服务器中,由多个服务器来实现本申请的游戏的显示控制方法。
在一些实施例中,服务器也可以以终端的形式来实现。
例如,参考图1a,在一些实施方式中提供了一种游戏的显示控制系统的场景示意图,该系统可以实现游戏的显示控制方法。该游戏的显示控制系统可以包括至少一个终端1000、至少一个服务器2000,至少一个数据库3000以及网络4000,终端、服务器以及数据库可通过网络进行数据交互。
其中,服务器用于获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域;对场景区域进行遮罩处理,得到场景区域对应的遮罩信息;根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息;根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息;由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。其中,数据库用于存储玩家在终端进行游戏的数据。其中,网络用于服务器与终端之间的数据传输,网络可以是无线网络或者有线网络,比如无线网络为无线局域网(WLAN)、局域网(LAN)、蜂窝网络、2G网络、3G网络、4G网络、5G网络等。
以下分别进行详细说明。需说明的是,以下实施例的先后次序不作为对实施例优选顺序的限定。可以理解的是,在本申请的具体实施方式中,涉及到与用户相关的数据,当本申请以下实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
在本实施例中,提供了一种游戏的显示控制方法,如图1b所示,该游戏的显示控制方法的具体流程可以如下:
110、获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域。
其中,场景区域可以指游戏场景中的区域范围。例如,游戏场景中建筑物A占据的范围可以视作该建筑物对应的场景区域。在本申请实施例中,对应深度级别的场景区域可以为:对应该深度级别的像素(场景模型)在游戏场景中占据的范围。
例如,可以根据游戏场景的场景深度将游戏场景划分为1~7个深度级别的场景区域。深度级别的值越大,该场景区域内像素点距离虚拟摄像头的距离越远,或,深度级别的值越大,该场景区域内像素点距离虚拟摄像头的距离越近。
其中,场景深度可以指游戏场景的深度信息。例如,场景深度可以包括游戏场景中像素的深度值,场景深度值可以以游戏场景中被渲染的点距离镜头的像素个数来表示,在游戏场景中越靠近虚拟摄像头的点的场景深度值越小,越远离虚拟摄像头的点的场景深度值越大。
可选地,可以自定义设置获取的场景深度的游戏场景的范围。例如,可以获取游戏中的部分游戏场景的场景深度,以生成部分游戏场景的游戏地图,也可以获取游戏中的全部游戏场景的场景深度,以生成全部游戏场景的游戏地图。
在一些实施方式中,可以为游戏场景中的不同场景模型组件设置不同的深度级别,以此可以对根据不同的深度级别,为各场景模型组件设置不同的颜色,以自动生成以不同颜色标示不同场景模型组件的游戏地图,提升生成游戏地图的效率。具体地,获取游戏场景之前,还包括:
获取游戏场景,包括:
从游戏场景中确定多个场景模型组件;
对多个场景模型组件对应的场景区域设置不同的深度级别,以得到多个对应不同深度级别的场景区域。
其中,场景模型可以指游戏场景中物体的模型,例如,场景模型可以包括但不限于多个静态虚拟对象,具体包括地面、山体、石体、植被、建筑等。场景模型组件可以指由多个场景模型组成的一组场景模型。例如,多个植被模型组成一片树林或多条路面模型练连成的一条道路,可以视作一个场景模型组件。
例如,游戏场景中可以包括建筑、道路、河流、山林等四个场景模型组件,可以将这四个场景模型组件分别设置为深度级别1~4,也即将这四个场景模型组件对应的场景区域依次设置为深度级别1~4。
可选地,在对场景模型组件设置深度级别后,可以将深度级别信息以及每个深度级别对应的颜色参数存储在材质模块中,以便于调用。
可选地,获取游戏场景之前,还包括:若游戏场景中存在对应同一场景深度的至少两个场景模型组件,为至少两个场景模型组件设置不同的深度级别;若游戏场景中存在属于相同场景区域的至少两个场景模型组件,为至少两个场景模型组件设置相同的深度级别。以此,可以对游戏场景中的所有场景模型组件的所在场景区域进行合理区分,提升生成的游戏地图的准确性。
120、对场景区域进行遮罩处理,得到场景区域对应的遮罩信息。
其中,遮罩又称为Mask,遮罩的本质是通过材质计算出0和1,来决定模型的显示与不显示,0表示显示,1表示不显示。例如,可以根据场景区域的深度值,通过遮罩遮挡模型场景深度较大的区域,以显示场景深度较小的区域。再如,也可以对场景区域的RGB颜色通道中的至少一种进行遮挡,以显示部分颜色。本申请实施例使用的遮罩可以为根据场景区域生成的、用于掩盖在场景区域中模型上区域。在实际的使用中,虚拟遮罩可以为3D或2D形遮罩,可根据实际的需要进行调整,在此不做具体限定。
其中,遮罩信息可以指与遮罩相关的信息,例如,用于表征遮罩显示与不显示信息的参数(非0即1),或场景区域被遮罩遮挡后的颜色信息。例如,遮罩信息可以包括但不限于对场景区域的位置的显示或不显示,对场景区域对应的颜色通道的显示或不显示等。
可选地,可以通过遮罩处理降低场景区域的颜色信息的维度,以提升后续处理过程效率,而且以处理后的颜色信息作为插值权重,能使处理后的显示效果与场景区域相匹配,增加为场景区域设置颜色的准确性。具体地,对场景区域进行遮罩处理,得到场景区域对应的遮罩信息,包括:基于场景区域的颜色信息,对游戏场景进行遮罩处理,得到场景区域对应的单通道颜色信息。例如,可以通过遮罩对场景区域的RGB颜色通道中的GB颜色通道进行遮挡,以此,仅显示R颜色通道的颜色信息,并以此作为遮罩信息。
130、根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息。
可以根据场景区域对应的深度级别,为不同深度级别的场景区域设置初始颜色信息,以区分场景区域。例如,可以为不同深度级别预设初始颜色信息,也可以根据与任一深度级别关联的深度级别对应的颜色信息,来设置该任一深度级别的初始颜色信息。
在一些实施方式中,可以根据游戏场景的场景深度,快速确定第一颜色信息,以提升处理效率。具体地,根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息之前,还包括:
获取游戏场景的场景深度;
根据场景深度,在游戏场景中生成虚拟遮罩;
根据虚拟遮罩的遮罩信息,确定基础颜色信息。
例如,可以基于预设的Mask算法如BoxMask-3D函数等对游戏场景的场景深度进行处理,并根据处理结果生成虚拟遮罩,并将处理结果作为基础颜色信息,或对处理结果进一步处理后确定基础颜色信息。
可选地,场景深度可以包括游戏场景中场景模型的模型深度以及游戏场景的最大深度。模型深度可以指游戏场景中场景模型对应的像素的深度值。其中,游戏场景的最大深度即为游戏场景的场景整体深度,通常可以根据具体游戏引擎设置不同的最大深度,如最大深度可以设置为250000。
例如,如图1c所示,可以将模型深度除以场景整体深度,得到参数值,并可以根据该深度参数在游戏场景中生成Mask,以得到遮罩信息。可以理解的是,游戏场景不一定所有位置都存在场景模型,因此,在通过模型深度除以最大深度后,存在场景模型的区域对应的参数值不为0,不存在场景模型的场景区域对应的参数值为0,因此,可以通过Mask区分游戏场景中参数值为0的场景区域和参数值不为0的区域。
可选地,虚拟遮罩的遮罩信息可以为表征遮罩显示与不显示信息的参数,如存在场景模型的场景区域对应的遮罩信息为0,不存在场景模型的场景区域对应的遮罩信息为1。或者,虚拟遮罩的遮罩信息也可以为模型深度除以最大深度的参数值。
可选地,在得到参数值后,可以对参数值向下取整,得到第一颜色信息。通过向下取整,可以剔除参数值的小数部分,以使得在游戏场景的区域设置颜色时,可以获得单一颜色的区域,而非具有渐变颜色的区域。
在一些实施方式中,可以以虚拟遮罩的遮罩信息,对虚拟遮罩不同区域的颜色参数进行插值处理,以为自动游戏场景中不同区域设置不同的显示颜色,以提升生成游戏地图的效率和准确性。具体地,虚拟遮罩包括第一遮罩区域以及第二遮罩区域,根据虚拟遮罩的遮罩信息,确定基础颜色信息,包括:
根据第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数,分别确定第一颜色通道的第三颜色值以及第二颜色通道的第四颜色值;
将虚拟遮罩的遮罩信息作为插值权重,对第三颜色值以及第四颜色值进行插值处理,得到基础颜色信息。
其中,颜色参数可以为预设的参数值,该参数值可以以RGB颜色值或十六进制颜色值等表示,如黑色表示为RGB(0,0,0),红色表示为RGB(255,0,0),或黑色表示为#000000,红色表示为#FF00001。
其中,插值处理又称内插值处理,基本原理是利用函数f(x)在某区间中已知的若干点的函数值确定出适当的特定函数,在区间的其他点上用该特定函数的值作为函数f(x)的近似值。在本申请实施例中,插值处理的方法包括距离倒数乘方法、克里金法、最小曲率法、多元回归法、径向基本函数法、线形插值法、自然邻点插值法和最近邻点插值法等诸多插值算法中的任意一种或其结合,本申请的对此不做特别限制。例如,可以通过线性插值法,利用过A点和B点的直线来近似表示原函数f(x),并基于插值权重,用这两个点对场景区域要显示的颜色进行数值估计。
其中,颜色通道可以指保存颜色信息的通道,插值处理中的颜色通道可以表示为插值中的点,如线性插值法中的A点和B点分别为A通道和B通道。本申请实施例中颜色通道存储的颜色信息即为颜色值。例如,A通道中可以保存红色对应的颜色参数,B通道中可以保存绿色对应的颜色参数。
其中,插值权重可以指插值处理过程中用于对通道颜色进行缓和的权重。
例如,可以通过Lerp函数表达式Lerp(A,B,Alpha)进行插值处理,如图1c所示,将第一遮罩区域对应的颜色参数作为表达式中的A通道的颜色值,第二遮罩区域对应的颜色参数作为表达式中的B通道的颜色值,虚拟遮罩的遮罩信息作为表达式中的插值权重Alpha。以根据虚拟遮罩的遮罩信息,在A和B之间进行混合,并输出混合的结果。由于,该虚拟遮罩的遮罩信息所表示的是非0即1的数据,对A和B进行混合后输出的结果即为存在场景模型的区域的颜色值以及不存在场景模型的区域的颜色值,这两个颜色值即为A或者B的颜色值。若虚拟遮罩的遮罩信息所表示的是模型深度除以最大深度的参数值,则参数值为A和B进行混合后的颜色值可以不为A或者B的颜色值。
可选地,第一颜色通道为插值处理中的A通道,第二颜色通道为插值处理中的B通道。
可选地,第一遮罩区域为存在场景模型的区域,第二遮罩区域为游戏场景中不存在场景模型的区域。
可选地,可以设置第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数相同,如都可以为红色,以此由这两个颜色参数混合得到颜色也为红色,可以将该颜色作为游戏场景的底色,若在后续过程中,没有检测到场景区域,可以显示该底色,以提示用户。
在一些实施方式中,可以对游戏场景中的多个不同深度级别的场景区域设置颜色信息,并将上一次给场景区域设置的颜色信息用于下一次处理过程,以为游戏场景中不同区域设置不同的显示颜色,以使生成的游戏地图的各区块的颜色有差异,增加生成的游戏地图的准确性。具体地,初始颜色信息包括第一颜色信息以及第二颜色信息,根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息,包括:
若场景区域对应的深度级别满足预设条件,获取基础颜色信息,并将基础颜色信息作为第一颜色信息;
若场景区域对应的深度级别不满足预设条件,获取上一场景区域对应的插值颜色信息,并将上一场景区域对应的插值颜色信息作为第一颜色信息,上一场景区域为按照深度级别排序的、场景区域的前一场景区域。
例如,如图1d所示,可以将该场景自定义模板减去1,该减去的部分即为游戏场景中自定义深度(即深度级别)为1的场景区域即第一场景区域,可以将基础颜色信息作为第一场景区域的第一颜色信息,将第一场景区域对应的颜色参数作为第二颜色信息,来确定第一颜色通道(A通道)的第一颜色值以及第二颜色通道(B通道)的第二颜色值,并根据第一场景区域对应的遮罩信息作为插值权重,对该第一颜色值以及第二颜色值进行插值处理,得到第一场景区域对应的插值颜色信息。可以将第一场景区域如自定义深度为1的场景区域的值再减1,以获得自定义深度为2的场景区域即第二场景区域。将第二场景区域对应的颜色参数作为第二场景区域的第二颜色信息,将插值颜色信息作为第二场景区域的第一颜色信息,来确定第一颜色通道的第一颜色值(A通道)以及第二颜色通道(B通道)的第二颜色值,并根据第二场景区域对应的遮罩信息作为插值权重,对第一颜色值以及第二颜色值进行插值处理,得到第二场景区域对应的插值颜色信息。在得到自定义深度为2的场景区域对应的插值颜色信息后,可以继续进行检测是否有除自定义深度为1以及自定义深度为2的场景区域以外的场景区域,若有,如有自定义深度为3的场景区域,则将自定义深度为2的场景区域对应的插值颜色信息作为该自定义深度为3的场景区域的第一颜色信息,并获取该自定义深度为3的场景区域的第二颜色信息,以此重复,直至检测结束。
在一些实施方式中,可以依序检测游戏场景中的场景区域,以有序遍历游戏场景中所有深度级别的场景区域,避免错漏,增加生成的游戏地图的准确性。具体地,预设条件为场景区域为按照深度级别排序的首个场景区域。
其中,深度级别可以按照预设顺序排列。预设顺序可以为根据场景深度对深度级别进行排序的顺序。例如,预设顺序可以为深度级别按照场景深度从高到低依次排序,也可以为深度级别按照场景深度从低到高依次排序。
例如,深度级别包括按照从低到高依次排序的深度级别1~3,则深度级别1对应的场景区域可以为首个场景区域,且深度级别1对应的场景区域则为深度级别2对应的场景区域的前一场景区域。
140、根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息。
在确定场景区域的遮罩信息后,可以根据场景区域对应的初始颜色信息以及遮罩信息,为不同深度级别的深度级别设置不同的颜色,以区分场景区域。例如,可以基于遮罩信息对初始颜色信息进行混合、调整、选取等操作,以输出场景区域对应的颜色信息。
需说明的是,步骤120~步骤140的执行顺序,可以根据实际应用调整。例如,可以先通过步骤120对每个游戏场景分别进行遮罩处理,得到每个场景区域对应的遮罩信息,或游戏场景进行遮罩处理,从遮罩处理结果中获取每个场景区域对应的遮罩信息,再对每个场景区域分别执行步骤130以及步骤140,以确定每个场景区域对应的颜色信息。再如,也可以根据深度级别的排序,依次对每个场景区域执行步骤120~步骤140。再如,步骤120可以在步骤130之前执行,也可以在步骤130之后执行。
可选地,可以根据深度级别的排序,依次对场景区域设置对应的颜色信息。具体地,根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息可以包括:根据目标场景区域对应的深度级别,获取目标场景区域对应的初始颜色信息,目标场景区域为根据深度级别的排序确定的场景区域;
根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息,可以包括:根据目标场景区域对应的初始颜色信息以及目标场景区域对应的遮罩信息,对目标场景区域设置对应的颜色信息。
例如,可以依照深度级别从小至大的排序,依次分别对深度级别为1的场景区域、深度级别为2的场景区域以及深度级别为3的场景区域分别执行步骤130~步骤140。
在一些实施方式中,可以以场景区域对应的遮罩信息进行插值处理,以根据遮罩信息为场景区域设置特异性的颜色值,以使生成的游戏地图的各区块的颜色有差异,增加生成的游戏地图的准确性。具体地,根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息,包括:
将场景区域对应的遮罩信息作为插值权重;
通过插值权重,对场景区域对应的初始颜色信息进行插值处理,得到插值颜色信息;
根据插值颜色信息,对场景区域设置对应的颜色信息。
其中,插值颜色信息可以指插值处理的结果,通常插值处理后输出的是颜色值。
例如,可以通过对场景区域进行遮罩处理,获取场景区域的RGB颜色通道中R颜色通道的颜色信息作为遮罩信息,并将该颜色信息作为插值权重,通过线性插值法,利用过A点和B点的直线来近似表示原函数f(x),以输出相应的插值结果,并将该插值结果设置为该场景区域的颜色值。
在一些实施方式中,可以结合场景区域对应的两个颜色信息来确定该场景区域的插值颜色信息,以使生成的游戏地图的各区块的颜色有差异,增加生成的游戏地图的准确性。具体地,初始颜色信息包括第一颜色信息以及第二颜色信息,通过插值权重,对场景区域对应的初始颜色信息进行插值处理,得到插值颜色信息,包括:
根据场景区域对应的第一颜色信息、以及场景区域对应的第二颜色信息,分别确定第一颜色通道的第一颜色值以及第二颜色通道的第二颜色值;
将场景区域对应的遮罩信息作为插值权重,对第一颜色值以及第二颜色值进行插值处理,得到插值颜色信息。
例如,根据任一场景区域对应的遮罩信息,对该场景区域对应的第一颜色值和第二颜色值之间进行混合,得到该场景区域对应的颜色值。
可选地,场景区域对应的第二颜色信息可以为该场景区域对应的颜色参数,该颜色参数与第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数不同。不同深度级别的场景区域对应的颜色参数可以相同也可以不同。
可选地,可以设置场景区域对应的颜色参数与第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数差异较大,以可以通过插值生成多种与颜色参数不同的颜色。例如,可以设置场景区域对应的颜色参数为黑色,第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数为红色,以此可以通过插值处理生成红、绿、青、黄、蓝、橙等颜色。
可选地,方法,还包括:在游戏场景中检测场景区域。例如,可以在游戏引擎中的场景自定义模板(Scene Custom Stencil)中设置多个深度级别,每个深度级别对应一个场景区域。可以将后期处理材质中的场景自定义模板减去1,该减去的部分即为游戏场景中自定义深度(即深度级别)为1的场景区域。可以理解的是,该减去过程即为在游戏场景中检测场景区域的过程。若检测到场景区域,可以对执行步骤120~步骤140,即对场景区域进行遮罩处理,确定场景区域对应的初始颜色,以根据遮罩信息以及初始颜色信息,对场景区域设置对应的颜色信息;若未检测到场景区域,则结束流程。
150、由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。
例如,可以对游戏场景进行捕获以生成游戏地图图片,在捕获过程中,每个设置了颜色值的场景区域可以得到对应的区块,以此,可以得到包括多个区块的游戏地图的图像。可以将该游戏地图调整为合适的尺寸,以贴图形式在游戏界面的边角显示。
在一些实施方式中,可以在游戏场景捕获相应的场景区域,以自动渲染生成具有相同颜色区块的游戏地图,以提升生成游戏地图的效率,同时也可以避免出错。具体地,由场景区域生成游戏地图,包括:
创建渲染目标;
通过渲染目标,在游戏场景中捕获颜色信息对应的场景区域;
由捕获到的场景区域,得到对应颜色信息的区块,以生成游戏地图。
其中,场景捕获组件可以理解为是游戏引擎中用于获取二维画面的摄像机组件。
在实际应用中,可以在游戏引擎的场景中置入后期处理体积(PostProcessVolume),并将步骤140得到的对应场景区域的颜色信息作为材质实例置入该后期处理盒体积中。可以创建渲染目标,并将其存储为变量以供以后使用,渲染目标可以指用于存储基础颜色、法线和环境光遮蔽等信息的对象,其可以在运行时写入纹理。可以在场景中置入场景捕获组件(SceneCapture2D),该组件有一个选项是纹理目标(TextureTarget),纹理目标用于存储获取的画面,纹理目标是一个渲染目标类型。以此,可以将渲染目标置入场景捕获组件的纹理目标中,以通过渲染目标在游戏场景中捕获颜色信息对应的场景区域,并将捕获到的图像存储在纹理目标中。
在一些实施方式中,可以将游戏场景调整为正交视角,以确保捕获的图片素材没有透视,保证生成的游戏地图的准确性。具体地,方法,还包括:
将游戏场景调整为正交视角。
例如,可以在步骤140之前将游戏场景调整为正交视角,也可以在将渲染目标置入场景捕获组件的纹理目标后,可以将游戏引擎中的场景捕获组件投射(SceneCapture2DProjection)改为Orthographic(正交),以将游戏场景调整为正交视角。
可选地,为了增强捕获的图像的显示效果,避免因捕获过程导致的图像颜色失真,可以将场景捕获组件的捕获源设置为场景区域对应的颜色信息。例如,可以在游戏引擎中将Capture Source(捕获源)设置为Final Color(LDR)in RGB,即设置为的场景区域对应的颜色信息。
可选地,可以通过调整正交投影宽度调整游戏地图的比例,以对不同的游戏界面显示不同比例的游戏地图,增加游戏地图的适应性。由场景区域生成游戏地图之后,还包括:
通过调整正交视角的正交投影宽度,以调整游戏地图的比例,得到调整后的游戏地图。
其中,正交投影宽度可以指正交投影视椎体的宽度。例如,可以调整游戏引擎中的Ortho Width(正交投影宽度),以调整投影得到的游戏地图的长宽比。
本申请实施例提供的游戏显示控制方案可以应用在各种游戏场景中。比如,以网络游戏为例,获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域;对场景区域进行遮罩处理,得到场景区域对应的遮罩信息;根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息;根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息;由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。
现有技术制作游戏地图时,通常是对3D游戏场景进行分类进行拍屏截图,获取到游戏场景中不同组件的图片资源,如不同风格的建筑、桥、水域。草地等,通过人工处理后将图片资源进行叠加生成游戏地图。这种处理方式需要对多个图片进行叠加处理,工作流程相对繁琐,得出的结果更偏向于场景的真实地图,不具备平涂风格化的特征,同时也不具备可扩展其他风格的可能性。
然而,由上可知,本申请实施例在得到场景区域的遮罩信息后,可以根据场景区域对应的初始颜色信息以及遮罩信息,自动为不同深度级别的深度级别设置不同的颜色,以生成以不同颜色标示不同场景区域的平涂风格化的游戏地图,解决人工加工得到游戏地图造成的时间长、容易出错的问题,提升生成游戏地图的效率,同时也可以避免出错。
根据上述实施例所描述的方法,以下将作进一步详细说明。
本申请实施例的方法可以应用于多种游戏引擎中,如主流引擎:Unity3D、虚幻4引擎(UE4)等,也可以应用于自研引擎。以下将以本申请实施例的方法应用于UE4进行说明,UE4是Unreal Engine的简称,是一款商业游戏引擎,用于制作游戏。
如图2a所示,本申请实施例的方法可以应用于游戏的显示控制系统,该系统可以搭载在UE4上,该系统可以包括场景模型模块、材质模块以及图像生成模块。
本申请实施例可以使用UE4的Custom Depth(自定义深度)与Custom Stencil(自定义模板)技术,在Post Process(后期处理)中而非主渲染管线中进行处理,使得每个场景区域显示出不同的颜色,且场景区域不受任何外部因素的限制,且可以自定义每个场景区域的层级(理论上可以支持无限个层级)。利用Render Target(渲染目标)技术对图形进行Capture(捕获)获得精度较高的素材图,之后在使用Adobe Substance 3D Designer、AdobePhotoshop或者其他图像处理软件对素材图进行二次加工,实现批量产出。以下将结合具体方法对该系统的具体工作流程进行说明。
如图2b所示,一种游戏的显示控制方法具体流程如下:
210、从游戏场景中确定多个场景模型组件,并对多个场景模型组件对应的场景区域设置不同的深度级别。
通过对场景模型组件对应的场景区域设置多个深度级别,可以得到多个对应不同深度级别的场景区域。例如,游戏场景中,可以由对应房屋的场景模型组件A,对应草地地面的场景模型组件B以及对应石板路的场景模型组件C。如图2a所示,场景模型模块中可以存储有场景模型组件A、场景模型组件B和场景模型组件C,初始状态下场景模型组件的CustomStencil(自定义模块)默认不开启,即Custom Stencil=0。可以以场景模型组件的CustomStencil的值作为场景模型组件的深度级别,以通过分别设置场景模型组件A的值为1、场景模型组件B的值为2、场景模型组件C的值为3,以将这三个场景模型组件的深度级别设置为1~3,即这三个场景模型组件对应的场景区域的深度级别也为1~3。
具体地,可以将游戏场景的场景模型置入关卡内,打开Render Custom DepthPass(渲染自定义深度过程),并设置Custom Depth Stencil Value(自定义深度模块值),场景中模型的区域自动识别和划分均可通过该操作进行。以下将以如图2c所示的游戏场景,对步骤210进行说明。
例如,如图2c所示的游戏场景中,草地地面部分和石板路部分紧挨在一起,属于同一高度不同区域,可通过设置不同的Custom Depth Stencil Value进行区分,以得到如图2d所示的游戏地图,图中较深灰色区域为草地地面部分和房屋部分,较浅灰色区域为石板路部分。
再如,房屋部分和石板路部分高度差别比较大,属于不同高度,假设它们属于区域,可通过设置相同的Custom Depth Stencil Value进行区分,以得到如图2e所示的游戏地图,图中较深灰色区域为草地地面部分,较浅灰色区域为石板路部分和房屋部分。
以此,可以根据游戏需要,为场景中的每个场景模型组件赋予对应的CustomDepth Stencil Value(即深度级别)。以此在对场景区域设置对应的颜色信息后,在RenderTarget(渲染目标)文件中查看会得到如图2f所示的游戏地图,能够清晰准确的获得各个区域在图片中的位置与比例。例如,可以将场景中的不可行走区域、草地地面区域、石板路区域、灌木区域以及房屋区域对应的场景模型组件分别设置相应的Custom Depth Stencil值,并设置空余部分的Custom Depth Stencil值为0。以此可以据此将生成的游戏地图划分为如图2f所示的六个区域,图中按照颜色不同分别为不可行走区域、草地地面区域、石板路区域、灌木区域、房屋区域、空余部分。
通过图2c所示的游戏场景可以看到,除了房屋部分之外,其他区域的高度均十分近似甚至完全相同,因此本方案可以通过上述技术手段,将这些区域良好的划分了出来。并且每个区域的色块非常的清晰整洁,非常适合做风格化平涂游戏地图的制作。并且只需要一张图片就完成了所有区域的划分,不需要其他的步骤。
需说明的是,本申请实施例的场景区域是指场景模型组件在游戏场景中占据的区域,可以理解的是,一个深度级别对应的场景模型组件可以对应一个场景区域,以此,可以以场景模型组件来表征对应的场景区域。本申请实施例的步骤210~步骤270可以用于编写应用于UE4的Post Process(后期处理)的Shader(着色器),在Shader里完成不同深度值可以赋予不同颜色的功能。着色器是用来实现图像渲染的,用来替代固定渲染管线的可编辑程序。
220、根据游戏场景的场景深度,确定基础颜色信息。
例如,可以材质模块可以获取场景深度(Scene Custom Depth),将场景深度除以UE4的场景整体深度250000,来生成场景中空余部分(背景)与需要获取部分的Mask,使用floor剔除小数部分,使用Lerp节点对这两部分做区分,将不需要的空余部分排除掉,排除掉之后剩下的部分即场景内自定义深度为0(默认值)的区域(后期处理材质中CustomStencil默认为0)。同时还可以将Lerp节点的输出结果作为基础颜色信息。
Lerp节点即为插值节点,可以根据Lerp函数表达式对输入的颜色信息进行插值处理,以输出处理后的颜色信息。
230、对第一场景区域进行遮罩处理,得到第一场景区域对应的遮罩信息。
例如,如图2a所示,可以在材质模块创建后期处理材质。初始状态下,后期处理材质中Custom Stencil默认为0。可以将材质中的Custom Stencil减1,既可以根据计算结果在场景模型模块中确定Custom Stencil=1的场景模型组件A,并可以对场景模型组件A进行遮罩处理,以生成场景模型组件A的Mask遮罩。
后期处理材质是与后期处理一起使用的材质,以创建破坏的视觉屏幕效果、区域类型效果或只能通过后置处理材质才能实现的游戏整体外观。例如,在UE4的渲染功能中,可以通过点开后期处理材质,添加数组元素,选择资产引用,为数组元素添加后期处理材质,以为调整图层增加显示效果。
240、将第一场景区域对应的遮罩信息作为插值权重,通过插值权重,对第一场景区域对应的第一颜色信息以及第二颜色信息进行插值处理,得到第一场景区域对应的插值颜色信息。
例如,可以将基础颜色信息作为场景模型组件A对应的第一颜色信息,将场景模型组件A对应的颜色参数作为场景模型组件A对应的第二颜色信息。如图2a所示,材质模块可以将场景模型组件A的Mask遮罩作为插值权重,基于场景模型组件A对应的第一颜色信息以及第二颜色信息使用Lerp节点进行区分,得到场景模型组件A对应的指定颜色A(插值颜色信息),以将自定义深度为1的区域(场景模型组件A所在的场景区域)和其他区域(包括背景、自定义深度为0、自定义深度为2/3/4的区域)区分开来。
再如,以此可以为3个不同的Scene Custom Stencil赋予不同颜色的Shader写法,可为3个不同的自定义区域(自定义深度为1、自定义深度为大于1的区域、和背景区域)赋予不同的颜色,这一过程中自定义深度为0的区域不会参与计算。
250、对第二场景区域进行遮罩处理,得到第二场景区域对应的遮罩信息。
例如,如图2a所示,在确定对场景模型组件A对应的指定颜色A后,可以将材质中的Custom Stencil再减1,既可以根据计算结果在场景模型模块中确定Custom Stencil=2的场景模型组件B,并可以对场景模型组件B进行遮罩区域,以生成场景模型组件B的Mask遮罩。
260、将第二场景区域对应的遮罩信息作为插值权重,通过插值权重,对第二场景区域对应的第一颜色信息以及第二颜色信息进行插值处理,得到第二场景区域对应的插值颜色信息,以此类推,直至得到最后一个场景区域对应的插值颜色信息。
例如,可以将场景模型组件A对应的插值颜色信息作为场景模型组件B对应的第一颜色信息,将场景模型组件B对应的颜色参数作为场景模型组件B对应的第二颜色信息。如图2a所示,材质模块可以将场景模型组件B的Mask遮罩作为插值权重,对场景模型组件B对应的第一颜色信息以及第二颜色信息进行插值处理,得到场景模型组件B对应的指定颜色B(插值颜色信息)。
以此类推,可以将材质中的Custom Stencil再减1,既可以根据计算结果在场景模型模块中确定Custom Stencil=3的场景模型组件C,并可以对场景模型组件C进行遮罩处理以生成场景模型组件C的Mask遮罩。可以将场景模型组件B对应的插值颜色信息作为场景模型组件C对应的第一颜色信息,将场景模型组件C对应的颜色参数作为场景模型组件C对应的第二颜色信息。如图2a所示,材质模块可以将场景模型组件C的Mask遮罩作为插值权重,对场景模型组件B对应的第一颜色信息以及第二颜色信息进行插值处理,得到场景模型组件C对应的指定颜色C(插值颜色信息)。
再如,获得的自定义深度为1的物体的区域的值在减去1,即可获自定义深度为2的物体的区域,在通过Lerp节点进行区分,以此类推,即可获得n个不同自定义深度值的物体的区域。如图2g所示,展示的是为多个不同的Scene Custom Stencil赋予不同颜色的Shader写法(即确定多个场景区域对应的插值颜色信息的流程),通过该流程可以为多个的自定义区域(包括背景和场景区域)赋予不同的颜色。该Shader写法在理论上可以扩展至无N区域,N的数值取决于游戏引擎的深度范围与精度。
270、根据插值颜色信息,对场景区域设置对应的颜色信息。
例如,可以将上述Shader转化为如图2h所示材质实例,可以更快速便捷的调整每个自定义区域(场景区域)的颜色,调整每个区域的颜色为不同的值。
再如,如图2a所示,可以由指定颜色A、指定颜色B以及指定颜色C添加在后期处理材质中生成材质实例,以得到最终区域颜色材质。材质模块可以将最终区域颜色材质发送至场景模型模块,以使该材质实例可以应用于场景模型中,使各场景模型组件调整为对应的指定颜色。
280、由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。
例如,图2a所示,图像生成模块可以在场景中置入场景捕获组件(SceneCapture2D),该组件有一个选项是纹理目标(Texture Target),纹理目标用于存储获取的画面,纹理目标是一个渲染目标类型。以此,可以将渲染目标置入场景捕获组件的纹理目标中,以通过渲染目标在游戏场景中捕获颜色信息对应的场景区域,并将捕获到的图像存储在纹理目标中,最终输出包含对应各指定颜色的游戏地图图片。
具体地,可以通过如下步骤生成游戏地图:
1、新建关卡,将PostProcessVolume(后期处理体积)置入关卡内,并将上一步得到的材质实例置入PostProcessVolume内。
2、新建Render Target文件。在关卡中置入SceneCapture2D(场景捕获组件),将新建的Render Target文件置入SceneCapture2D的Texture Target(纹理目标)中;将SceneCapture2DProjection(场景捕获组件投射)改为Orthographic(正交),确保捕获的图片素材没有透视;将Capture Source(捕获源)设置为Final Color(LDR)in RGB(即材质实例中的颜色信息),确保捕获的图片素材是上述步骤中所设置的颜色。
3、打开Render Target(渲染目标)文件,此时场景中不存在模型,所以RenderTarget显示的内容为如图2e为背景设置的BackGroundColor(背景颜色)红色。
在得到游戏地图后,可以将图片导出,在Adobe Substance 3D Designer、AdobePhotoshop等图像处理软件对素材图进行二次加工。如在Adobe Substance3D Designer进行批处理方式的二次加工的流程中,可以通过提取每个区域不同的颜色,对其进行上色、模糊、描边、添加纹理等一系列操作,具体操作方式可以根据实际需求调整。最终由如图2c所示的游戏场景得到如图2i所示的UI地图。通过整理Adobe Substance 3D Designer的计算节点,即实现批量产出UI地图。
然而,例如,如图2j所示现有技术生成游戏地图的方法,现有技术通过获取游戏场景中建筑房屋范围和水区域范围的图片资源1、游戏场景细节的图片资源2以及对游戏场景等高线区间填色的图片资源3,通过人工对图片资源1、图片资源2以及图片资源3叠加生成地图,得到的最终结果更偏向于场景的真实地图,不具备平涂风格化的特征,同时也不具备可扩展其他风格的可能性。
由上可知,相比现有技术,本申请实施例能够快速稳定的产出平涂风格化的UI地图;通过本申请实施例的Shader写法,产出地图的区域完全可自定义,不受高度等外在因素影响,适合俯视视角下具有多区域的游戏,生成UI地图中各区域全部存在一张图上,不需要通过叠加的方式进行二次处理,可以提升生成游戏地图的效率,同时也可以避免出错。
为了更好地实施以上方法,本申请实施例还提供一种游戏的显示控制装置,该游戏的显示控制装置具体可以集成在电子设备中,该电子设备可以为终端、服务器等设备。其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、个人电脑等设备;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。
比如,在本实施例中,将以游戏的显示控制装置具体集成在服务器为例,对本申请实施例的方法进行详细说明。
例如,如图3所示,该游戏的显示控制装置可以包括场景获取单元310、遮罩处理单元320、颜色获取单元330、颜色设置单元340以及地图生成单元350,如下:
(一)场景获取单元310
用于获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域。
在一些实施方式中,场景获取单元310还可以用于:
从游戏场景中确定多个场景模型组件;
对多个场景模型组件对应的场景区域设置不同的深度级别,以得到多个对应不同深度级别的场景区域。
(二)遮罩处理单元320
用于对场景区域进行遮罩处理,得到场景区域对应的遮罩信息。
(三)颜色获取单元330
用于根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息。
在一些实施方式中,初始颜色信息包括第一颜色信息以及第二颜色信息,颜色获取单元330具体可以用于,包括:
获取场景区域对应的第二颜色信息;
若场景区域对应的深度级别满足预设条件,获取基础颜色信息,并将基础颜色信息作为第一颜色信息;
若场景区域对应的深度级别不满足预设条件,获取上一场景区域对应的插值颜色信息,并将上一场景区域对应的插值颜色信息作为第一颜色信息,上一场景区域为按照深度级别排序的、场景区域的前一场景区域。
在一些实施方式中,预设条件为场景区域为按照深度级别排序的首个场景区域。
在一些实施方式中,颜色获取单元330还可以用于:
获取游戏场景的场景深度;
根据场景深度,在游戏场景中生成虚拟遮罩;
根据虚拟遮罩的遮罩信息,确定基础颜色信息。
在一些实施方式中,虚拟遮罩包括第一遮罩区域以及第二遮罩区域,根据虚拟遮罩的遮罩信息,确定基础颜色信息,包括:
根据第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数,分别确定第一颜色通道的第三颜色值以及第二颜色通道的第四颜色值;
将虚拟遮罩的遮罩信息作为插值权重,对第三颜色值以及第四颜色值进行插值处理,得到基础颜色信息。
(四)颜色设置单元340
用于根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息。
在一些实施方式中,颜色设置单元340具体可以用于:
将场景区域对应的遮罩信息作为插值权重;
通过插值权重,对场景区域对应的初始颜色信息进行插值处理,得到插值颜色信息;
根据插值颜色信息,对场景区域设置对应的颜色信息。
在一些实施方式中,初始颜色信息包括第一颜色信息以及第二颜色信息,通过插值权重,对场景区域对应的初始颜色信息进行插值处理,得到插值颜色信息,包括:
根据场景区域对应的第一颜色信息、以及场景区域对应的第二颜色信息,分别确定第一颜色通道的第一颜色值以及第二颜色通道的第二颜色值;
将场景区域对应的遮罩信息作为插值权重,对第一颜色值以及第二颜色值进行插值处理,得到场景区域对应的插值颜色信息。
(五)地图生成单元350
用于由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。
在一些实施方式中,地图生成单元350还可以用于:
将游戏场景调整为正交视角。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由此,本申请实施例可以在得到场景区域的遮罩信息后,可以根据场景区域对应的初始颜色信息以及遮罩信息,自动为不同深度级别的深度级别设置不同的颜色,以生成以不同颜色标示不同场景区域的平涂风格化的游戏地图,解决人工加工得到游戏地图造成的时间长、容易出错的问题,提升生成游戏地图的效率,同时也可以避免出错。
相应的,本申请实施例还提供一种计算机设备,该计算机设备可以为终端或服务器,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机、个人数字助理(Personal Digital Assistant,PDA)等终端设备。
如图4所示,图4为本申请实施例提供的计算机设备的结构示意图,该计算机设备400包括有一个或者一个以上处理核心的处理器410、有一个或一个以上计算机可读存储介质的存储器420及存储在存储器420上并可在处理器上运行的计算机程序。其中,处理器410与存储器420电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器410是计算机设备400的控制中心,利用各种接口和线路连接整个计算机设备400的各个部分,通过运行或加载存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行计算机设备400的各种功能和处理数据,从而对计算机设备400进行整体监控。
在本申请实施例中,计算机设备400中的处理器410会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器420中,并由处理器410来运行存储在存储器420中的应用程序,从而实现各种功能:
获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域;对场景区域进行遮罩处理,得到场景区域对应的遮罩信息;根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息;根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息;由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图4所示,计算机设备400还包括:触控显示屏430、射频电路440、音频电路450、输入单元460以及电源470。其中,处理器410分别与触控显示屏430、射频电路440、音频电路450、输入单元460以及电源470电性连接。本领域技术人员可以理解,图4中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
触控显示屏430可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏430可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器410,并能接收处理器410发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器410以确定触摸事件的类型,随后处理器410根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏430而实现输入和输出功能。但是在某些实施例中,触控面板与显示面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏430也可以作为输入单元460的一部分实现输入功能。
在本申请实施例中,通过处理器410执行游戏应用程序在触控显示屏430上生成图形用户界面,图形用户界面上的虚拟场景中包含至少一个技能控制区域,技能控制区域中包含至少一个技能控件。该触控显示屏430用于呈现图形用户界面以及接收用户作用于图形用户界面产生的操作指令。
射频电路440可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
音频电路450可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路450可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路450接收后转换为音频数据,再将音频数据输出处理器410处理后,经射频电路440以发送给比如另一计算机设备,或者将音频数据输出至存储器420以便进一步处理。音频电路450还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
输入单元460可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源470用于给计算机设备400的各个部件供电。可选的,电源470可以通过电源管理系统与处理器410逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源470还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图4中未示出,计算机设备400还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
由上可知,本实施例提供的计算机设备可以在得到场景区域的遮罩信息后,可以根据场景区域对应的初始颜色信息以及遮罩信息,自动为不同深度级别的深度级别设置不同的颜色,以生成以不同颜色标示不同场景区域的平涂风格化的游戏地图,解决人工加工得到游戏地图造成的时间长、容易出错的问题,提升生成游戏地图的效率,同时也可以避免出错。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种游戏的显示控制方法中的步骤。例如,该计算机程序可以执行如下步骤:
获取游戏场景,游戏场景包括多个对应不同深度级别的场景区域;对场景区域进行遮罩处理,得到场景区域对应的遮罩信息;根据场景区域对应的深度级别,获取场景区域对应的初始颜色信息;根据场景区域对应的初始颜色信息以及场景区域对应的遮罩信息,对场景区域设置对应的颜色信息;由场景区域生成游戏地图,游戏地图包括对应颜色信息的区块。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种游戏的显示控制方法中的步骤,因此,可以实现本申请实施例所提供的任一种游戏的显示控制方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种游戏的显示控制方法、装置、计算机设备和介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (12)
1.一种游戏的显示控制方法,其特征在于,包括:
获取游戏场景,所述游戏场景包括多个对应不同深度级别的场景区域;
对所述场景区域进行遮罩处理,得到所述场景区域对应的遮罩信息;
根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息;
根据所述场景区域对应的初始颜色信息以及所述场景区域对应的遮罩信息,对所述场景区域设置对应的颜色信息;
由所述场景区域生成游戏地图,所述游戏地图包括对应所述颜色信息的区块。
2.如权利要求1所述的游戏的显示控制方法,其特征在于,所述根据所述场景区域对应的初始颜色信息以及所述场景区域对应的遮罩信息,对所述场景区域设置对应的颜色信息,包括:
将所述场景区域对应的遮罩信息作为插值权重;
通过所述插值权重,对所述场景区域对应的初始颜色信息进行插值处理,得到插值颜色信息;
根据所述插值颜色信息,对所述场景区域设置对应的颜色信息。
3.如权利要求2所述的游戏的显示控制方法,其特征在于,所述初始颜色信息包括第一颜色信息以及第二颜色信息,所述通过所述插值权重,对所述场景区域对应的所述初始颜色信息进行插值处理,得到插值颜色信息,包括:
根据所述场景区域对应的所述第一颜色信息、以及所述场景区域对应的所述第二颜色信息,分别确定第一颜色通道的第一颜色值以及第二颜色通道的第二颜色值;
将所述场景区域对应的遮罩信息作为插值权重,对所述第一颜色值以及所述第二颜色值进行插值处理,得到所述场景区域对应的插值颜色信息。
4.如权利要求2所述的游戏的显示控制方法,其特征在于,所述初始颜色信息包括第一颜色信息以及第二颜色信息,所述根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息,包括:
获取所述场景区域对应的所述第二颜色信息;
若所述场景区域对应的所述深度级别满足预设条件,获取基础颜色信息,并将所述基础颜色信息作为所述第一颜色信息;
若所述场景区域对应的所述深度级别不满足所述预设条件,获取上一场景区域对应的所述插值颜色信息,并将所述上一场景区域对应的所述插值颜色信息作为所述第一颜色信息,所述上一场景区域为按照所述深度级别排序的、所述场景区域的前一所述场景区域。
5.如权利要求4所述的游戏的显示控制方法,其特征在于,所述预设条件为所述场景区域为按照所述深度级别排序的首个所述场景区域。
6.如权利要求4所述的游戏的显示控制方法,其特征在于,所述根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息之前,还包括:
获取所述游戏场景的场景深度;
根据所述场景深度,在所述游戏场景中生成虚拟遮罩;
根据所述虚拟遮罩的遮罩信息,确定基础颜色信息。
7.如权利要求6所述的游戏的显示控制方法,其特征在于,所述虚拟遮罩包括第一遮罩区域以及第二遮罩区域,所述根据所述虚拟遮罩的遮罩信息,确定基础颜色信息,包括:
根据所述第一遮罩区域对应的颜色参数以及第二遮罩区域对应的颜色参数,分别确定第一颜色通道的第三颜色值以及第二颜色通道的第四颜色值;
将所述虚拟遮罩的遮罩信息作为插值权重,对所述第三颜色值以及所述第四颜色值进行插值处理,得到基础颜色信息。
8.如权利要求1所述的游戏的显示控制方法,其特征在于,所述获取游戏场景之前,还包括:
从所述游戏场景中确定多个场景模型组件;
对所述多个场景模型组件对应的场景区域设置不同的所述深度级别,以得到多个对应不同所述深度级别的场景区域。
9.如权利要求1~8任一项所述的游戏的显示控制方法,其特征在于,所述方法,还包括:
将所述游戏场景调整为正交视角。
10.一种游戏的显示控制装置,其特征在于,包括:
场景获取单元,用于获取游戏场景,所述游戏场景包括多个对应不同深度级别的场景区域;
遮罩处理单元,用于对所述场景区域进行遮罩处理,得到所述场景区域对应的遮罩信息;
颜色获取单元,用于根据所述场景区域对应的深度级别,获取所述场景区域对应的初始颜色信息;
颜色设置单元,用于根据所述场景区域对应的初始颜色信息以及所述场景区域对应的遮罩信息,对所述场景区域设置对应的颜色信息;
地图生成单元,用于由所述场景区域生成游戏地图,所述游戏地图包括对应所述颜色信息的区块。
11.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行如权利要求1~9任一项所述的游戏的显示控制方法中的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1~9任一项所述的游戏的显示控制方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211355524.3A CN115888103A (zh) | 2022-11-01 | 2022-11-01 | 游戏的显示控制方法、装置、计算机设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211355524.3A CN115888103A (zh) | 2022-11-01 | 2022-11-01 | 游戏的显示控制方法、装置、计算机设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115888103A true CN115888103A (zh) | 2023-04-04 |
Family
ID=86485276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211355524.3A Pending CN115888103A (zh) | 2022-11-01 | 2022-11-01 | 游戏的显示控制方法、装置、计算机设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115888103A (zh) |
-
2022
- 2022-11-01 CN CN202211355524.3A patent/CN115888103A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108876931B (zh) | 三维物体颜色调整方法、装置、计算机设备及计算机可读存储介质 | |
CN112215934A (zh) | 游戏模型的渲染方法、装置、存储介质及电子装置 | |
CN112619154B (zh) | 虚拟模型的处理方法、装置及电子装置 | |
CN110115841B (zh) | 一种游戏场景中植被对象的渲染方法和装置 | |
CN112717414B (zh) | 游戏场景编辑方法、装置、电子设备以及存储介质 | |
CN113457137B (zh) | 游戏场景生成方法、装置、计算机设备及可读存储介质 | |
CN112274934B (zh) | 模型渲染方法、装置、设备及存储介质 | |
US20240087219A1 (en) | Method and apparatus for generating lighting image, device, and medium | |
US20230033319A1 (en) | Method, apparatus and device for processing shadow texture, computer-readable storage medium, and program product | |
CN116402931A (zh) | 体积渲染方法、装置、计算机设备和计算机可读存储介质 | |
CN117455753B (zh) | 特效模板生成方法、特效生成方法、装置及存储介质 | |
CN112231020B (zh) | 模型切换方法和装置、电子设备和存储介质 | |
CN116485981A (zh) | 三维模型贴图制作方法、装置、设备及存储介质 | |
CN116452704A (zh) | 镜头光晕特效的生成方法、装置、存储介质及电子装置 | |
CN115888103A (zh) | 游戏的显示控制方法、装置、计算机设备和介质 | |
CN115880402A (zh) | 流动动画生成方法、装置、电子设备和可读存储介质 | |
CN112473135B (zh) | 移动游戏的实时光照模拟方法、装置、设备及存储介质 | |
CN115006842A (zh) | 场景地图生成方法、装置、存储介质及计算机设备 | |
CN115035231A (zh) | 阴影烘焙方法、装置、电子设备和存储介质 | |
US20240193864A1 (en) | Method for 3d visualization of sensor data | |
CN108553902A (zh) | 一种基于ue引擎的多维材质的变换方法 | |
CN118096966A (zh) | 图像处理方法、装置、设备、存储介质及程序产品 | |
CN114419233A (zh) | 模型生成方法、装置、计算机设备及存储介质 | |
CN116328298A (zh) | 虚拟模型的渲染方法、装置、计算机设备及存储介质 | |
CN118674846A (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 |