CN115006842A - 场景地图生成方法、装置、存储介质及计算机设备 - Google Patents

场景地图生成方法、装置、存储介质及计算机设备 Download PDF

Info

Publication number
CN115006842A
CN115006842A CN202210667485.4A CN202210667485A CN115006842A CN 115006842 A CN115006842 A CN 115006842A CN 202210667485 A CN202210667485 A CN 202210667485A CN 115006842 A CN115006842 A CN 115006842A
Authority
CN
China
Prior art keywords
data
terrain
grid
target
scene
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
Application number
CN202210667485.4A
Other languages
English (en)
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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210667485.4A priority Critical patent/CN115006842A/zh
Publication of CN115006842A publication Critical patent/CN115006842A/zh
Pending legal-status Critical Current

Links

Images

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/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5378Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for displaying an additional top view, e.g. radar screens or maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Optics & Photonics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请实施例公开了一种场景地图生成方法、装置、存储介质及计算机设备。该方法包括:获取游戏的地形场景的高度场数据,并将高度场数据转换为多边形网格数据,在转化的过程中,高度场数据中的地形场景对应的高度数据和地形场景中的地形层的遮罩数据全部继承传递至多边形网格数据中的网格点中,基于多边形网格数据,根据遮罩数据确定多边形网格数据的网格点的颜色,并获取场景地图所需的目标精度,根据目标精度和颜色,对多边形网格数据进行精度处理,以得到场景地图中的目标点和目标点的目标颜色,根据目标颜色对目标点进行渲染处理,得到场景地图,本申请实施例提高场景地图的可调可控性,同时提高地形场景中的数据利用率。

Description

场景地图生成方法、装置、存储介质及计算机设备
技术领域
本申请涉及数据处理技术领域,具体涉及一种场景地图生成方法、装置、计算机可读存储介质及计算机设备。
背景技术
在游戏中,场景地图可以起到引导指示玩家的作用,如根据场景地图来判定角色所处的区域等,一张精确或风格鲜明的场景地图能在一定程度上提高游戏的质量,提升用户的体验。
目前游戏中的场景地图可通过如下方式来得到:第一种方式,在游戏角色的顶部绑定一个摄像机,在游戏运行时实时获取角色所在区域的俯视视角画面;第二种方式,对游戏地形场景进行正交视角的俯视画面截取。
其中,第一种方式中,游戏每帧中角色所在区域都在变化,导致俯视画面截取刷新频率很高,即使降低俯视画面的截取刷新频率仍然会有较高的消耗,且该种方式只能获取角色所在的一小部分区域的俯视画面,不能得到一张包含整个场景地形的场景地图。第二种方式中可以得到整个场景地形的场景地图,但由于是对游戏地形场景进行正交视角的俯视画面截取,使的得到的场景地图中记载的数据有效利用率与可控可调节度都较低。
发明内容
本申请实施例提供一种场景地图生成方法、装置、计算机可读存储介质及计算机设备,可以生成精度可调的场景地图,提高场景地图的可调可控性,同时提高地形场景中的数据利用率。
本申请实施例提供了一种场景地图生成方法,包括:
获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据;
将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据;
对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色;
获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色;
根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的所述场景地图。
本申请实施例还提供一种场景地图生成装置,包括:
获取模块,用于获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据;
转换模块,用于将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据;
颜色确定模块,用于对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色;
精度处理模块,用于获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色;
渲染模块,用于根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的所述场景地图。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于处理器进行加载,以执行如上任一实施例所述的场景地图生成方法中的步骤。
本申请实施例还提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,执行如上任一实施例所述的场景地图生成方法中的步骤。
本申请实施例提供的场景地图生成方法、装置、计算机可读存储介质及计算机设备,通过获取游戏的地形场景的高度场数据,并将高度场数据转换为多边形网格数据,在转化的过程中,高度场数据中的地形场景对应的高度数据和地形场景中的地形层的遮罩数据全部继承传递至多边形网格数据中的网格点中,如此,多边形网格数据中包括了地形场景中的所有信息,再基于多边形网格数据生成场景地图,使得生成的场景地图的目标点中包括了对应地形场景的信息,提高了地形场景的数据利用率;具体地,基于多边形网格数据,根据遮罩数据确定多边形网格数据的网格点的颜色,并获取场景地图所需的目标精度,根据目标精度和颜色,对多边形网格数据进行精度处理,以得到场景地图中的目标点和目标点的目标颜色,根据目标颜色对目标点进行渲染处理,得到场景地图,其中,根据所获取的目标精度对多边形网格数据进行精度处理,使得生成的场景地图的精度可调可控,提高所生成的场景地图的可调可控性,同时根据多边形网格数据中的网格点进行处理得到场景地图,使得场景地图中不会缺失内容,提高场景地图的完整性和精度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中的生成的场景地图的对比示意图。
图2为本申请实施例提供的场景地图生成方法的流程示意图。
图3为本申请实施例提供的场景地图的示意图。
图4a为本申请实施例提供的经过颜色平滑处理后的场景地图的示意图。
图4b为本申请实施例提供的经过光照阴影处理后的场景地图的示意图。
图5为本申请实施例提供的场景地图生成方法的一流程示意图。
图6a为本申请实施例提供的填充颜色后的区域示意图。
图6b为本申请实施例提供的区域描边图的示意图。
图7为本申请实施例提供的场景地图生成方法的另一流程示意图。
图8为本申请实施例提供的通道图以及通道图的几个通道的示意图。
图9为本申请实施例提供的场景地图生成方法的又一流程示意图。
图10为本申请实施例提供的场景地图生成装置的结构示意图。
图11为本申请实施例提供的场景地图生成装置的另一结构示意图。
图12为本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在介绍本申请实施例之前,先对目前游戏中的场景地图的生成方式:对游戏地形场景进行正交视角的俯视画面截取(即背景技术中的第二种方式),进行分析。
因为是对游戏地形场景进行正交视角的俯视画面截取,在截取时,由于场景可视距离裁切、场景内模型多细节层次等参数设置不同以及场景里地形赋予的材质不同等原因,得到的场景地图所呈现的内容会有较大的差异,可能会导致所对应的场景地图画面中缺失内容。如图1所示,从左到右分别为需要得到的理想俯视视角画面、场景内模型多细节层次设置较低而缺失内容的画面、场景模型赋予的材质对正交俯视视角兼容不好而缺失内容的画面。由于是截取的俯视画面,得到的场景地图中记载的数据有效利用率与可控可调节度都较低。此外,正交视角的俯视画面截取的效率较低,尤其是在当场景地形的数量较多、迭代频率较高时非常费时费力。
因此,本申请实施例提供一种场景地图生成方法、装置、计算机可读存储介质及计算机设备,以解决上述技术问题。需要注意的是,本申请中的场景地图指的是游戏场景中的小地图,该种小地图可用于引导指示玩家,如指示玩家所操作的虚拟对象当前所处的区域,指示队友虚拟对象和/或敌友虚拟对象所在的位置等。
具体地,本申请实施例的场景地图生成方法可以由计算机设备执行,其中,该计算机设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal DigitalAssistant,PDA)等设备。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云存储等基础云计算服务的云服务器。
例如,当该场景地图生成方法应用于终端时,在终端上生成场景地图,例如,从服务器中获取高度场数据等,利用高度场数据在终端上生成场景地图。其中,终端用于通过图形用户界面与用户进行交互,例如,用户可通过图形用户界面输入/设置场景地图所需的目标精度和/或地形层的初始颜色等信息,以及通过图形用户界面来显示所生成的场景地图等。
例如,当该场景地图生成方法应用于服务器时,在服务器中生成场景地图,服务器与客户端进行交互,例如,通过客户端的图形用户界面输入/设置场景地图所需的目标精度和/或地形层的初始颜色等信息,将场景地图所需的目标精度和/或地形层的初始颜色等信息上传至服务器,使得服务器执行本申请实施例中的场景地图生成方法,生成场景地图,所生成的场景地图可在客户端上显示。或者也可直接在服务器中输入/设置场景地图所需的目标精度和/或地形层的初始颜色等信息,来生成场景地图。
以下将分别对本申请实施例提供的一种场景地图生成方法、装置、计算机可读存储介质及计算机设备进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。
图2是本申请实施例提供的场景地图生成方法的流程示意图,该场景地图生成方法应用于计算机设备中,该场景地图生成方法包括如下步骤。
101,获取游戏的地形场景的高度场数据,该地形场景包括至少一个地形层,该高度场数据包括地形场景对应的高度数据、地形层对应的遮罩数据。
其中,游戏的地形场景可以是三维、及以上维度的场景,在地形场景中包括至少一个地形层,一般情况下,地形场景中包括多个地形层。该地形层可包括山石、河流、道路、陆地、海洋/湖等地形,其中,山石、河流、道路、陆地、海洋/湖等分别对应一个地形层,如山石对应山石地形层或山石层、河流对应河流地形层或河流层等,地形层中还包括经过计算之后得到的地形层。需要注意的是,根据实际场景的不同,地形场景中还可以包括其他的不同地形,在此不一一例举。
高度场数据可以是HeightField数据,高度场数据中地形的数据形式是体素(volume),体素可以理解为三维空间中的像素。高度场数据中包括高度层和各种遮罩层(mask),其中,高度层中保存的是高度数据,该高度数据记录的是地形场景上每一处的高度信息,各种遮罩层中包括地形层所对应的遮罩层,和/或经过计算之后得到的各种地形层(本质上也属于遮罩层),如经过侵蚀计算之后得到的flow层(流动地形成或流动层)、debris层(岩屑地形层或岩屑层)、slope层(坡地地形层或坡地层)等。其中,遮罩层中包括地形层中对应的遮罩数据。
遮罩数据具体对应的是遮罩权重,遮罩权重表示地形场景中每一处地方属于某一地形层的权重/比重。如地形场景中某一点为整个地形中的最高点,按照需求该处存在积雪,该点属于snow层且完全被snow层包裹,所以snow层上它所对应的遮罩数据为1,而山脚处某点位于坡地跟平地的交界,则坡地地形层上它所对应的遮罩数据为0.5。不同的地形层对应的遮罩数据记录了地形场景中各点在地形层上的权重/比重。遮罩数据是地形层可视化的基础,地形层的遮罩数据的值为[0,1]中的任意值。
在一情况下,高度场数据可以通过地形制作工具在制作地形场景时输出的数据,该地形制作工具可以为Houdini工具,还可以是其他的可实现类似功能的工具,对应的,本申请实施例中的场景地图生成方法可与地形制作工具紧密结合以输出需要的场景地图。高度场数据还可以通过其他的方式得到。
102,将高度场数据转换为多边形网格数据,其中,多边形网格数据上继承有高度数据和遮罩数据。
高度场数据中的数据形式为体素,而多边形网格数据(Polygon Mesh)中的数据形式为点线面等,由于数据格式不一样,且后续处理时主要是基于点来进行处理,因此需要将高度场数据转换为多边形网格数据,将转换后的多边形网格数据中的点称为网格点,转换后的多边形网格数据中还包括线信息和面信息等。其中,线信息中包括线上包括的网格点,面信息包括面上包括的网格点和/或线信息等。
在一实施例中,将高度场数据转换为多边形网格数据的步骤,包括:将高度场数据中的体素转换为多边形网格数据中的网格点,将高度场数据中的体素之间的关系转化为多边形网格数据中的线信息和/或面信息,将高度数据转换为网格点的高度数据,将高度场数据中的地形层以及地形层的遮罩数据分别转换网格点的新增属性的属性值信息。
其中,在将高度场数据转换为多边形网格数据的过程中,包括:获取转换密度(density),根据转换密度将高度场数据转换为多边形网格数据,具体地,根据转换密度将高度场数据中的体素转换为多边形网格数据中的网格点,……等。其中,转换密度可以为(0,10)中的任意一个值。
其中,转换密度指的是转换比例,如将高度场数据中的体素转换为多边形网格数据中的网格点的转换比例。高度场数据的数据精度指的是高度场数据的数据大小、高度场数据的数据尺寸或者高度场数据的数据分辨率等。高度场数据的数据精度也可以理解为高度场数据所对应的高度场(HeightField)精度、高度场大小、高度场尺寸或者高度场分辨率等。假设高度场数据的数据精度/大小/尺寸/分辨率为4033*4033,当转换密度为1时,一个体素对应一个网格点,将该体素所对应的坐标信息作为网格点的坐标信息,得到一个4033*4033大小的多边形网格数据,多边形网格数据中有4033*4033的网格点,其中,体素所对应的高度数据,与地形场景对应的高度数据对应,将体素所对应的高度数据作为网格点的高度数据;当转换密度为0.5时,2个体素对应一个网格点,将该2个体素所对应的平均值作为网格点的坐标信息,得到一个4033*4033的多边形网格数据,但多边形网格数据中的网格点为2016*2016;当转换密度为2时,一个体素对应两个网格点,具体不一一例举。
其中,转换密度从1变为0.5时,多边形网格数据中的网格点由1600多万变成了400多万,所处理的网格点的数量大大降低,在效果满足需求的情况改下,降低转换密度(降低精度)以提高输出地图的速度。可以理解地,通过转换密度来调节输出场景地图的精度,达到场景地图的精度可调可控。场景地图的精度调整还可以通过其他方式来实现,下文中会详细描述。
转换密度可以是通过设置后设置的值,如果未设置的话则可以是默认的值,如默认为1。
在一实施例中,转换密度可以在将高度场数据转换为多边形网格数据之前进行设置,例如可在获取高度场数据之前进行设置,如可在图形用户界面上进行设置,默认为1,根据所设置的转换密度将高度场数据转换为多边形网格数据。具体地,获取转换设置指令,该转换设置指令可以通过命令触发,通过触摸/点击对应的转换控件触发,还可以通过其他方式触发;根据转换设置指令调用转换参数设置界面,其中,转换参数设置界面中可供用户设置/选择/输入转换密度,若用户未设置/选择/输入转换密度,则转换密度采用默认值;获取转换参数设置界面中的转换密度;根据转换密度自动将高度场数据转换为多边形网格数据。
其中,在转换后的网格点上,将高度场数据中的地形层数据作为网格点新增的属性,为了描述的方便,将该新增的属性称为点层级属性,将地形层数据对应的值,即网格点对应的体素具体属于哪个地形层作为该点层级属性的属性值等。例如,地形场景中包括4个地形层,分别是海洋地形层(ocean)、据点地形层(prefab)、河流地形层(river)、山石地形层(rock),某体素在转换前对应的地形层为海洋地形层,则转换后在该体素对应的网格点(如第一网格点)中新增点层级属性,该点层级属性的属性值为ocean,若某体素在转换前对应的地形层包括据点地形层和河流地形层,则转换为该体素对应的网格点(如第二网格点)中该点层级属性的属性值为(prefab,river)。还可以采用其他的方式来表示,例如,第一网格点的点层级属性的属性值为(1,0,0,0),第二网格点的点层级属性的属性值为(0,1,1,0)。其中,点层级属性的属性值中的数值的数量与地形层的数量相同,例如,地形层的数量为4个,则网格点中的点层级属性的属性值为(a1、a2、a3、a4),其中,a1、a2、a3、a4的数值与网格点所属的地形层有关,若网格点属于某个地形层,则某个地形层所对应的点层级属性中的数值为1,否则为0。
其中,在转换后的网格点中,将地形层对应的遮罩层作为网格点新增的属性,为了描述的方便,将该新增的属性称为遮罩属性,将遮罩层中具体的遮罩数据作为该遮罩属性的属性值,即网格点对应的体素所属的地形层的遮罩数据作为该遮罩属性的属性值。继续以上一段中描述的例子为例说明,在第一网格点中新增遮罩属性,由于海洋地形层所对应的遮罩数据为1,该遮罩属性的属性值为(1,0,0,0);在第二网格点中新增遮罩属性,由于据点地形层和河流地形层所对应的遮罩数据分别为0.3和0.7,因此该遮罩属性的属性值为(0,0.3,0.7,0)。其中,遮罩属性的属性值中的数值的数量与存在遮罩数据的地形层的数量相同,例如,存在遮罩数据的地形层的数量为6个,则网格点中的遮罩属性的属性值为(a,b,c,d,e,f),a、b、c、d、e、f的具体值与对应地形层的遮罩数据相同。
其中,点层级的属性值的表示方式、遮罩属性的属性值的表示方式只是示例说明,还可以采用任意的其他表示方式。
通过上述描述中可知,在将高度场数据转换为多边形网格数据的过程中,将地形场景中的高度场数据,如高度数据和地形层的遮罩数据等都继承传递至多边形网格数据上。如此,多边形网格数据中包括了地形场景中的所有信息,再基于多边形网格数据生成场景地图,使得生成的场景地图的目标点中包括了对应地形场景的信息,提高了地形场景/场景地图的数据利用率;且根据多边形网格数据中的网格点(数据处理单位小)进行处理得到场景地图,使得场景地图中不会缺失内容,提高场景地图的完整性和精度。得到多边形网格数据之后,为后续的基于多边形网格数据的更多操作提供基础。
103,对于多边形网格数据中的每个网格点,根据遮罩数据确定网格点的颜色。
其中,在得到多边形网格数据后,对于多边形网格数据中的每个网格点,确定其对应的颜色,根据遮罩数据对网格点对应的颜色进行处理,以确定处理后的网格点的颜色。其中,地形层对应的遮罩数据已经继承传递至多边形网格数据中,多边形网格数据中的遮罩数据指的是遮罩属性以及所对应的属性值。
在一情况中,将多边形网格数据中的每个网格点的颜色设定为默认颜色,再根据遮罩数据对网格点的默认颜色进行处理,以确定处理后的网格点的颜色。其中,多边形网格数据中的每个网格点的默认颜色均相同;或者多边形网格数据中的每个网格点的默认颜色,跟网格点所属的地形层的默认颜色有关,其中,网格点所属的地形层的默认颜色不相同,或者每相邻地形层的默认颜色不相同等,如此,属于地形层中的网格点,该网格点所对应的默认颜色与网格点所属的地形层的默认颜色相同,不属于地形层中的网格点,该网格点所对应的默认颜色即为设定的默认颜色。
确定网格点是否属于地形层中的网格点,可根据点层级属性的属性值来确定,例如,当点层级属性的属性值为river,则意味着该网格点属于河流地形层中的网格点,当点层级属性的属性值为(prefab,river),则意味着该网格点既属于据点地形层中的网格点,也属于河流地形层中的网格点。
其中,在一实施例中,网格点所属的地形层的颜色可调整,将调整后的地形层的颜色作为地形层的初始颜色。对应地,获取网格点的默认颜色,以及获取网格点所属的地形层的初始颜色,例如,某网格点既属于A地形层,又属于B地形层,则获取A地形层的初始颜色和B地形层的初始颜色;当确定网格点不属于任一地形层时,将默认颜色确定为网格点的颜色;当确定网格点属于某地形层时,根据某地形层的初始颜色和遮罩数据确定网格点的颜色。例如,A地形层所对应的初始颜色为m,遮罩数据为0.4,B地形层所对应的初始颜色为n,遮罩数据为0.6,则网格点的颜色为0.4*m+0.6*n,该种情况下主要是针对不同生态区域、地形层接壤交汇部分的网格点的颜色的确定,即根据遮罩权重来对不同生态区域、地形层接壤交汇部分的网格点的颜色进行混合;或者也可以使用其他的方式来确定网格点的颜色。该实施例中,由于网格点所属的地形层的颜色可调整,实现地形层颜色的可调可控,提高生成的场景地图的可调可控性。
其中,可在确定网格点的颜色之前设置网格点所属的地形层的初始颜色,例如在获取高度场数据之后设置网格点所属的地形层的初始颜色,或者在得到多边形网格数据之后且在确定网格点的颜色之前设置网格点所属的地形层的初始颜色,具体不做限定。如获取高度场数据中的地形层参数,该地形层参数包括地形层的数量和地形层的名称,设置地形层参数中对应的每个地形层的初始颜色。在一情况下,例如,获取颜色设置指令;根据颜色设置指令调用颜色参数设置界面,其中,颜色参数设置界面中显示每个地形层的名称和颜色设定框,在地形层的名称对应的颜色设定框中设置/选择/输入初始颜色,若未设置/选择/输入初始颜色,则采用地形层的默认颜色;获取所设置的地形层的初始颜色;根据地形层的初始颜色和遮罩数据自动确定网格点的颜色。
104,获取地形场景对应的场景地图所需的目标精度,并根据目标精度和颜色,对多边形网格数据进行精度处理,以得到场景地图中的目标点和目标点的目标颜色。
地形场景对应的场景地图所需的目标精度可根据实际情况确定。目标精度的确定有两种方式:一种是匹配高度场数据的数据精度,该数据精度即为高度场数据所对应的地形的大小,如高度场数据的数据精度为4033*4033,则输出的场景地图的目标精度也为4033*4033,若高度场数据的数据精度为1009*1009,则输出的场景地图的目标精度也为1009*1009;另一种是使用者决定输出的目标精度,即通过用户设置来确定目标精度,例如,获取精度参数设置界面中设置/选择/输入的精度,将该精度作为目标精度。在一情况下,例如,获取精度设置指令;根据精度设置指令调用精度参数设置界面,其中,精度参数设置界面中显示精度设定框,在精度设定框中设置/选择/输入目标精度,若未设置/选择/输入目标精度,则默认匹配高度场数据的数据精度;获取所设置的目标精度;根据目标精度自动进行精度处理。如此实现场景地图的精度自定义和精度的可调可控。
对应的,获取地形场景对应的场景地图所需的目标精度,可获取场景地图默认的目标精度,如与高度场数据的数据精度匹配的目标精度,也可获取所设置的目标精度。
在得到多边形网格数据,以及多边形网格数据中的每个网格点的颜色后,可直接进行透视投影以得到场景地图,或者先对网格点进行精度处理,再进行透视投影得到高精度的场景地图,该种使用透视投影的方式可实现场景地图的可调可控,提高场景地图记载的数据的有效利用率,但由于是使用透视投影的方式可能会导致得到的场景地图中的内容缺失,降低了场景地图的效果。此外,本申请中还提供了更优的实现方式。
在一实施例中,上述根据目标精度和颜色,对多边形网格数据进行精度处理,以得到场景地图中的目标点和目标点的目标颜色的步骤,包括:将多边形网格数据中的每个网格点坐标中的高度数据删除;根据目标精度和颜色,对删除了高度数据的网格点进行精度处理,以得到场景地图中的目标点和目标点的目标颜色。
多边形网格数据中的网格点为三维空间中的点,将三维空间中的高度数据删除之后得到二维空间中的网格点,再基于二维空间中的网格点进行精度处理,如此,以降低数据处理量;同时,将高度数据进行删除,并不影响场景地图的内容显示。
其中,上述根据目标精度和颜色,对删除了高度数据的网格点进行精度处理,以得到场景地图中的目标点和目标点的目标颜色的步骤,包括:获取地形场景的高度场数据的数据精度;当目标精度与数据精度相同时,则将删除了高度数据的网格点确定为场景地图中的目标点,将网格点的颜色确定为目标点的目标颜色;当目标精度与数据精度不相同时,根据目标精度对删除了高度数据的网格点进行精度处理,以得到场景地图中的目标点,并根据颜色确定目标点的目标颜色。
可理解地,当目标精度与数据精度相同时,不必进行具体的精度处理,直接将删除了高度数据的网格点确定为场景地图中的目标点,将网格点的颜色确定为目标点的目标颜色。而当目标精度与数据精度不相同时,需要对删除了高度数据的网格点进行精度处理。
具体地,上述根据目标精度对删除了高度数据的网格点进行精度处理,以得到场景地图中的目标点,并根据颜色确定目标点的目标颜色的步骤,包括:确定将数据精度调整至目标精度时,每第一数量的网格点所对应的目标点的第二数量;对于删除了高度数据的网格点,确定每第一数量的网格点所对应的第二数量的目标点的坐标;对于第二数量的每个目标点,根据颜色确定目标点的目标颜色。
例如,当数据精度为600*600,目标精度为1000*1000时,每3个网格点对应5个目标点,即第一数量为3,第二数量为5,理解为当需要将数据精度600*600调整至目标精度1000*1000时,在600*600中,每3个网格点需要换成5个目标点,以调整至1000*1000。再例如,当数据精度为4033*4033,目标精度为2016*2016,每2个网格点对应1个目标点,即第一数量为2,第二数量为1,理解为当需要将数据精度4033*4033调整至目标精度2016*2016时,在4033*4033中,每2个网格点需要换成1个目标点,以调整至2016*2016。
当目标精度大于数据精度时,上述对于删除了高度数据的网格点,确定每第一数量的网格点所对应的第二数量的目标点的坐标的步骤,包括:对于删除了高度数据的网格点,确定每第一数量的网格点所对应的网格线/网格面,在网格线/网格面上创建第二数量的目标点,例如在网格线/网格面上等距离创建第二数量的目标点,并确定所创建的每个目标点的坐标,以及删除第一数量的网格点。对应地,上述对于第二数量的每个目标点,根据颜色确定目标点的目标颜色的步骤,包括:对于第二数量的每个目标点,搜索网格点中离目标点最近的网格点,将离目标点最近的网格点的所有的属性全部继承至目标点,包括将离目标点最近的该网格点的颜色确定为目标点的颜色等。
当目标精度小于数据精度时,上述对于删除了高度数据的网格点,确定每第一数量的网格点所对应的第二数量的目标点的坐标的步骤,包括:对于删除了高度数据的网格点,从每第一数量的网格点中删除预设数量的网格点,以得到第二数量的网格点,例如可随机删除,也可以按照一定的规则进行删除等;将第二数量的网格点的坐标作为目标点的坐标。对应地,上述对于第二数量的每个目标点,根据颜色确定目标点的目标颜色的步骤,包括:将第二数量的网格点的颜色作为目标点的目标颜色。在一实施例中,当目标精度小于数据精度时,对于删除了高度数据的网格点,对于每第一数量的网格点,也可以先创建第二数量的目标点,确定目标点的坐标之后,再删除第一数量的网格点。
本申请实施例中,根据所获取的目标精度对多边形网格数据进行精度处理,使得生成的场景地图的精度可调可控,提高所生成的场景地图的可调可控性,在对场景地图的精度调整时,调整的单位为网格点,如此,通过调整网格点来得到场景地图,提高了调整的精度,且使得场景地图中不会缺失内容,提高场景地图的完整性,此外,在渲染之前,场景地图所对应的目标点的所有信息都可以进行保存,提高了地形场景/场景地图的数据利用率。
需要注意的是,上述实施例中的精度处理的实现方式只是例举,在其他实施例中,还可以使用其他方式实现相同的技术效果。
105,根据目标颜色对目标点进行渲染处理,以得到地形场景所对应的场景地图。
得到目标点和目标点的目标颜色后,将目标点和目标点的颜色进行渲染,以得到地形场景所对应的场景地图。如图3所示,为渲染之后得到的地形场景所对应的场景地图的示意图,该场景地图为基础场景地图。
在一些实施例中,除了高度场数据中能够直接提供的遮罩层mask所对应的地形层之外,还需要其他更多的区域,如地形场景中的浅海区域、可建造区域等,这些其他更多的区域可通过计算得到,如上文中提到的侵蚀计算、或者其他计算等。其中,一个区域即为一个地形层,为了便于理解,这里以区域来描述。对应地,在将高度场数据转换为多边形网格数据的步骤之前,所述场景地图生成方法,还包括:根据遮罩数据标定并划分高度场数据中的第一区域所对应的区域数据,该第一区域不为地形场景中遮罩数据所对应的地形层的区域;对应地,上述将高度场数据转换为多边形网格数据的步骤,包括:将包括第一区域的区域数据的高度场数据转换为多边形网格数据,将多边形网格数据中的第一区域对应的网格点添加新增的属性值以标记第一区域。
根据遮罩层所对应的遮罩数据来标定并划分高度场中所需要的其他更多的区域,将其他更多的区域称为第一区域,第一区域可包括地形场景中的浅海区域、可建造区域等。将高度场数据转换为多边形网格数据时,除了上文中所描述的详细步骤之外,还需要对第一区域对应的网格点新增对应的属性值,例如,在第一区域所对应的点层级属性中增加第一区域所对应的属性值,该第一区域所对应的属性值为第一区域所对应的地形层的名称。
其中,当第一区域为浅海区域时,上述根据遮罩数据标定并划分高度场数据中的第一区域所对应的区域数据的步骤,包括:获取遮罩数据所对应的地形层中的第一地形层的高度信息,该第一地形层包括海洋地形层;根据高度信息确定距离海洋地形层的海面预设距离之内的第一浅海区域;以第一浅海区域为基础,按照预设搜索距离进行点云延伸搜索,以确定一部分的海岸线陆地区域;将第一浅海区域和海岸线陆地区域确定为浅海区域。其中,预设距离和预设搜索距离可以根据实际情况确定,例如预设距离为12米、预设搜索距离为5米等。
如在海洋地形层所对应的遮罩层上,根据地形的高度数据进行计算,将距离海面12米以内的部分初步标记为第一浅海区域,再以第一浅海区域为基础,进行点云延伸搜索,设置预设搜索距离实现第一浅海区域的延伸拓宽,以拓宽得到比第一浅海区域更多的海洋区域以及靠海洋区域比较近的一部分海岸陆地区域,将第一浅海区域和海岸线陆地区域确定为浅海区域。如此,经过后文中提到的颜色平滑处理之后,可以将海洋到陆地之间的颜色过渡更自然。
其中,当第一区域为可建造区域时,上述根据遮罩数据标定并划分高度场数据中的第一区域所对应的区域数据的步骤,包括:确定地形场景中的地形坡度小于预设坡度的平缓区域;获取高度场数据中遮罩数据所对应的第二地形层的区域,该第二地形层不包括可建造区域对应的地形层,也不包括地形等级区域所对应的地形层,其中,该第二地形层,例如包括山石地形层、海洋地形层、据点地形层、河流地形层等;根据平缓区域和第二地形层的区域,确定高度场数据中的可建造区域。其中,预设坡度可以为小于20度的坡度。
如对地形场景中的地形进行计算,得到地形上坡度小于20度的平缓区域,获取高度场数据中所有遮罩数据所对应的所有地形层(如第二地形层)的区域,将平缓区域减去第二地形层的区域,得到高度场数据中的可建造区域,例如,利用平缓区域减去据点地形层(prefab mask)所在的区域、河流地形层(river mask)所在的区域、山石地形层(rockmask)所在的区域、海洋地形层(ocean mask)所在的区域等,得到可建造区域。
其他的更多的区域可根据实际情况进行确定,在此不一一举例。
在上述所有实施例的基础上,在根据遮罩数据确定网格点的颜色的步骤之后,所述场景地图生成方法,还包括:对多边形网格数据中的网格点进行颜色平滑处理,以得到颜色平滑处理之后的多边形网格数据;和/或对多边形网格数据中的网格点进行光照阴影处理,以得到光照阴影处理之后的多边形网格数据;和/或对多边形网格数据中的网格点进行滤镜处理,以得到滤镜处理之后的多边形网格数据等。
其中,颜色平滑处理的目的是为了使得多边形网格数据中的所有网格点的颜色过渡自然,颜色平滑处理包括对所有网格点的颜色进行颜色混合模糊处理,例如,可使用较大步幅较高循环次数的颜色混合模糊处理得到较为和谐的效果,再采用较小步幅较低次数的颜色混合模糊处理去处理上一次处理中未能得到较好效果的部分等。颜色平滑处理可通过Houdini地形图形制作工具提供的blur节点来处理。在一些情况下,使用blur节点来处理没法得到需要的效果时,可以使用自定义的方式去处理,如河流入海口处的颜色希望呈现的是浅海的颜色而不是河流的颜色,就需要将该部分的网格点本身具有的河流的颜色与海岸线(浅海区域的颜色来源)的颜色进行一定的混合等。具体地处理方式根据所需要的效果不同而不同,在此不一一例举。如图4a所示,增加了浅海区域后,对多边形网格数据进行颜色平滑处理之后得到的场景地图的效果图。
其中,光照阴影处理用于模拟场景地图上的光照阴影效果。例如使用光照算法如半兰伯特的光照算法,提供一个自定义的光照方向,对多边形网格数据中的网格点进行光照阴影处理,以得到光照阴影处理之后的多边形网格数据,如此,可实现模拟光照在地形场景上的阴影效果。如图4b所示,为在图4a的基础上,进行光照阴影处理之后得到的场景地图的效果图,该效果图中增加了光照阴影效果。
其中,滤镜处理用于模拟各种其他效果,如模糊效果、油画效果等等。例如,可在光照阴影处理之后对多边形网格数据中的网格点叠加滤镜算法进行滤镜处理,可以实现如高斯模糊的叠加效果,如可使用kuwahara滤镜算法对多边形网格数据中的网格点进行滤镜处理,以模拟出油画的效果等等。
具体的处理方式还有很多,可对多边形网格数据中的网格点进行各种各样的处理,以实现各种各样的效果,实现场景地图风格的自定义,提高场景地图的可调可控性。
在一实施例中,如图5所示,为本申请实施例提供的场景地图生成方法的一流程示意图,该场景地图生成方法包括如下步骤。
201,获取游戏的地形场景的高度场数据,该地形场景包括至少一个地形层,该高度场数据包括地形场景对应的高度数据、地形层对应的遮罩数据。
202,将高度场数据转换为多边形网格数据,其中,多边形网格数据上继承有高度数据和遮罩数据。
在一实施例中,在对多边形网格数据中的网格点处理之前,还包括步骤203。
203,将多边形网格数据中的每个网格点坐标中的高度数据删除。
步骤201至203请参看上文中对应步骤的描述,在此不再赘述。
204,在删除了高度数据的多边形网格数据中,确定来自于高度场数据中的各地形层所对应的网格数据块。
删除了高度数据的多边形网格数据中的网格点为二维空间中的点,在二维空间的网格点中,获取高度场数据中每个地形层所对应的网格点,将每个地形层所对应的网格点作为对应的网格数据块。
其中,该实施例中的各地形层包括山石地形层、河流地形层、海洋地形层等,以及经过计算得到的各地形层,还包括地形层所属的地形等级区域,如温带、热带、寒带、沙漠等等,或者可以理解为该实施例中将地形等级区域也作为一种特殊的地形层,一种地形等级区域作为一个地形层,本实施例中以该种情况为例进行说明。
在一些实施例中,也可以将地形等级区域与山石地形层、河流地形层、海洋地形层等,以及经过计算得到的各地形层作区分,在转换的过程中,将山石地形层、河流地形层、海洋地形层等,以及经过计算得到的各地形层作为网格点的一个新增的属性,如点层级数据,将地形等级区域作为网格点的另一个新增的属性,如点区域属性,将具体的地形等级区域作为点区域属性的属性值。
具体地,步骤204包括:遍历多边形网格数据中的每个网格点,并确定网格点所属的地形层;将属于同一地形层的网格点作为地形层所对应的网格数据块,以得到多边形网格数据中每个地形层所对应的网格数据块。例如,高度场数据中的地形层为6个,则得到6个网格数据块。
其中,确定网格点所属的地形层,包括:获取网格点中的点层级属性,根据点层级属性确定网格点所对应的地形层,例如,点层级属性为(rock,prefab),则确定网格点所对应的地形层为山石地形层、据点地形层,即该网格点既属于山石地形层,也属于据点地形层。例如,点层级属性为(rock,temperature),则确定网格点所对应的地形层为山石地形层、温带地形层,即该网格点既属于山石地形层,也属于温带地形层。
205,删除网格数据块内部的网格点,得到各地形层所对应的区域描边点。
根据网格数据块中的网格点的坐标来确定网格数据块内部的网格点,将网格数据块内部的网格点删除,每个网格数据块都进行相应的处理,以得到各地形层所对应的区域描边点。
206,设置区域描边点的目标颜色为预设颜色。
其中,预设颜色可以是默认颜色,也可以是所设置的其他任意一种颜色或者多种颜色。当预设颜色为一种颜色时,每一个地形层的区域描边点对应的目标颜色相同,若预设颜色为多种颜色,多种颜色的数量与地形层相同时,每一种地形层对应的目标颜色均不相同。当多个地形层所对应的区域描述点存在重叠时,渲染时取其中一种目标颜色。
207,根据目标颜色对区域描边点进行渲染,以得到地形场景所对应的区域描边图。
其中,将地形等级区域所对应的地形层单独进行上述步骤的处理,以得到区域描边图可如图6b所示。
在一实施例中,在上述确定来自于高度场数据中的各地形层所对应的网格数据块的步骤之后,还包括:通过颜色标定各网格数据块中的网格点。其中,不同网格数据块中的网格点使用不同的颜色进行标定,以通过标定的结果进一步确定各网格数据块是否有误等。其中,通过颜色标定各网格数据块中的网格点之后,渲染得到的效果图如图6a所示,其中,图6a中所得到的效果图对应的是地形等级区域所对应的渲染后的效果图。
该实施例中对多边形网格数据进行处理,以得到地形场景所对应的区域描边图,该区域描边图可应用于游戏中,例如,当用户触发了场景地图时,当确定触发的点属于某一个地形层所对应的区域时,在场景地图上显示该地形层的边缘(区域描边点)和/或该地形层的信息(如地形层的名称等),以供玩家快速的了解自己所操作的虚拟对象所处的区域/队友虚拟对象所处的区域/敌友虚拟对象所处的区域以及当前玩家所操作的虚拟对象当前所处的地形等信息。
在一实施例中,如图7所示,为本申请实施例提供的场景地图生成方法的另一流程示意图,该场景地图生成方法包括如下步骤。
301,获取游戏的地形场景的高度场数据,该地形场景包括至少一个地形层,该高度场数据包括地形场景对应的高度数据、地形层对应的遮罩数据。
302,将高度场数据转换为多边形网格数据,其中,多边形网格数据上继承有高度数据和遮罩数据。
在一实施例中,在对多边形网格数据中的网格点处理之前,还包括步骤303。
303,将多边形网格数据中的每个网格点坐标中的高度数据删除。
304,在删除了高度数据的多边形网格数据中,遍历该多边形网格数据中的每个网格点,确定每个网格点所属的地形层,并获取该地形层所对应的地形层编号。
删除了高度数据的多边形网格数据中的网格点为二维空间中的点,遍历多边形网格数据中的每个网格点,获取网格点中的点层级属性,根据点层级属性确定网格点所对应的地形层,并获取地形层所对应的地形层编号。
其中,预先设置地形层所对应的地形层编号,地形层所对应的地形层编号可以在映射参数设置界面中设置,例如,设置海洋地形层(ocean)所对应的地形层编号为1,沙漠地形层(arid)所对应的地形层编号为3,温带地形层所对应的地形层编号为4,……,如此,设置每个地形层所对应的地形层编号。
例如,获取编号设置指令;根据编号设置指令调用编号参数设置界面,其中,编号参数设置界面中显示每个地形层的名称和编号设定框,在地形层的名称对应的编号设定框中设置/选择/输入地形层编号,若未设置/选择/输入地形层编号,则采用地形层的默认地形层编号;获取所设置的地形层的地形层编号。
其中,上文中所述的编号参数设置界面、精度参数设置界面、颜色参数设置界面、转换参数设置界面可以是同一个界面,即在同一个界面中实现编号参数设置、精度参数设置、颜色参数设置和转换参数设置,对应地,编号设置指令、精度设置指令、颜色设置指令、转换设置指令为同一个指令;在其他情况下,编号参数设置界面、精度参数设置界面、颜色参数设置界面、转换参数设置界面也可以不属于同一个界面,例如,编号参数设置界面、精度参数设置界面、颜色参数设置界面在同一个界面中,而转换参数设置界面在另一个界面中,具体不做限定。
305,对于多边形网格数据中的每个网格点,将对应的地形层编号映射至通道图对应像素的某一通道中。
将每个网格点所对应的地形层编号映射至通道图的某一个通道中。其中,通道图就理解为一张图片,其中,一张图片具有RGBA四个通道,每个通道上可以存储0~255的数据,对应的,地形层编号为0-255的数据,根据需求可以在图片的不同通道上存储不同的数据。本申请实施例中可以将网格点对应的地形层编号映射至通道图对应像素的某一个通道中,例如G通道,也可以是其他的通道,最后就可以实现将整个地形场景的mask对应的地形层呈现在通道图的一个通道中。
需要注意的是,前文中所述的遮罩层(mask)是一个三维空间的遮罩图,对应保存的是遮罩权重,一个mask对应一个地形层的遮罩权重,即一个mask只能呈现一个地形层的信息,而此处的用于保存mask对应的地形层的通道图中,一个通道就可以保存所有地形层对应的点,即一个通道就可以呈现多个地形层的信息,也可以理解为通过一个通道就可以得到简化版的场景地图。
该通道图的其他通道中可根据需求保存其他的数据。例如,R通道中可保存地形等级区域所对应的地形层编号,B通道中可包括据点类型所对应的据点编号。如图8所示,左上角为通道图的整体显示效果,右上角为通道图的R通道所对应的显示效果,左下角为通道图的G通道所对应的显示效果,右下角为通道图的B通道所对应的显示效果。在一些实施例中,通道图的a通道(也称为alpha通道)也可以用来存储一些其他数据信息,图8中未示出a通道。
其中,地形层所对应的地形层编号(包括地形等级区域所对应的地形层编号)、据点类型所对应的据点编号都可以通过编号参数设置界面来进行设置。具体地,地形层所对应的地形层编号、据点类型所对应的据点编号可分别采用不同的映射规则来实现。其中,任何通过通道图的不同通道所保存的数据信息都可以分别采用对应的映射规则来实现。
在一些实施例中,还可以将地形层所对应的地形层编号、据点类型所对应的据点编号等信息可提前设置,保存在不同的数据表中,在编号参数设置界面加载该数据表。可理解地,通道图的一个通道所对应的数据保存在一个数据表中,若R通道、G通道、B通道、a通道都保存有数据,则对应有四个数据表。
306,渲染并显示该通道图。
得到该通道图后,该通道图可以应用于游戏中。例如,根据玩家所操作的虚拟对象当前在通道图中如G通道中的坐标位置,可反推确定出该虚拟对象在地形场景中的坐标位置,根据虚拟对象在虚拟场景中的坐标位置确定虚拟对象所处的地形层,并触发该地形层中的默认功能,例如,假设虚拟对象所处的地形层为snow,则触发下雪的功能。
如图9所示,为本申请实施例提供的又一场景地图生成方法,该场景地图生成方法包括如下步骤。
401,获取游戏的地形场景的高度场数据,该地形场景包括至少一个地形层,该高度场数据包括地形场景对应的高度数据、地形层对应的遮罩数据。
402,将高度场数据转换为多边形网格数据,其中,多边形网格数据上继承有高度数据和遮罩数据。
在将高度场数据转换为多边形网格数据时,使用了转换密度,根据转换密度将高度场数据转换为多边形网格数据,具体请参看上文中对应部分所述。
在一实施例中,在对多边形网格数据中的每个网格点处理之前,还包括步骤403。
403,将多边形网格数据中的每个网格点坐标中的高度数据删除。
404,在删除了高度数据的多边形网格数据中,遍历该多边形网格数据中的每个网格点,确定每个网格点所属的地形层,并统计属于同一个地形层的网格点的点数量。
删除了高度数据的多边形网格数据中的网格点为二维空间中的点,遍历多边形网格数据中的每个网格点,获取网格点中的点层级属性,根据点层级属性确定网格点所对应的地形层,并统计属于同一个地形层的网格点的点数量,该点数量对应为二维空间中的点数量。例如统计属于据点地形层的网格点的点数量、属于河流地形层的网格点的点数量、属于山石地形层的网格点的点数量、属于海洋地形层的网格点的点数量,……,等。
405,获取高度场数据转换为多边形网格数据的转换密度以及高度场数据的数据精度。
转换密度部分的内容请参看上文中的描述,在此不再赘述。高度场数据的数据精度也可以理解为高度场数据的尺寸/大小等。
406,根据转换密度、点数量和数据精度,计算地形场景中每种地形层的面积占比,以及统计地形场景中虚拟资源的数量。
其中,面积占比可通过点占比来近似确定。根据高度场数据的数据精度可确定高度场数据中的三维空间中的网格点的总点数量,而上述统计属于同一个地形层的网格点的点数量是在二维空间中得到的,从三维空间转换为二维空间,根据转换密度来确定转换后的二维点,因此,根据转换密度和二维的点数量可确定在高度场数据中属于同一个地形层的三维的网格点的点数量,将属于同一个地形层的三维的网格点的点数量与总点数量的比值确定为地形场景中该地形层的面积占比。如转换密度为0.5,则将二维的点数量乘以4(因为在转换时xy两个轴都乘以0.5了,所以需要乘以4)以得到高度场数据中该地形层的三维的网格点的点数量。将转换密度设置为0.5转换得到的多边形网格数据中仅有25%的点线面数量,以4K的地形场景为例,仅需要对400万左右个的二维点进行处理统计,之后乘以4就可以得到原本1600万个点中对应的数据,降低了处理统计的时间,提高了处理统计的效率。
按照本实施例中的方法可统计出如海洋与陆地在整个场景中的占比、地图中各个生态区域的面积占比、河流与道路的长度计算等数据,可建造区域的面积大小及其占比、还可以统计出整个地形场景中的各种据点数量,还有各个生态区域中的植被数量、矿物资源的数量等等。
统计出来的这些数据一方面可以为地形场景的制作提供参照,例如根据统计出来的这些数据可确定地形场景是否符合输出的要求,例如输出要求中规定:陆地占比达到40%以上。此外,统计出来的这些数据可应用在游戏中,例如,在玩家所操作的虚拟对象进入某地形中时,可提示玩家该地形的面积占比、该地形中的植被数量、矿物资源的数量等,以提供玩家的游戏体验。
407,保存每个地形层的面积占比和虚拟资源的数量。
每个地形层的面积占比和虚拟资源的数量可保存在表格中,也可以保存在文件中,例如json文件中。
该实施例中进一步对多边形网格数据的网格点的属性信息进行检索和统计,以充分利用多边形网格数据,为地形场景的做作提供指导,同时还可以将统计出来的数据应用于游戏中,提高了地形场景/场景地图中的数据利用率,提高了玩家的游戏体验。
上述所有的技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
为便于更好的实施本申请实施例的场景地图生成方法,本申请实施例还提供一种场景地图生成装置。请参阅图10,图10为本申请实施例提供的场景地图生成装置的结构示意图。该场景地图生成装置500可以包括获取模块501,转换模块502,颜色确定模块503、精度处理模块504以及渲染模块505。
获取模块501,用于获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据。
转换模块502,用于将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据。
颜色确定模块503,用于对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色。
精度处理模块504,用于获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色。
渲染模块505,用于根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的所述场景地图。
在一实施例中,颜色确定模块503具体用于对于所述多边形网格数据中的每个网格点,获取所述网格点的默认颜色,以及获取所述网格点所属的地形层的初始颜色;当确定所述网格点不属于任一地形层时,将所述默认颜色确定为所述网格点的颜色;当确定所述网格点属于所述地形层时,根据所述地形层的所述初始颜色和所述遮罩数据确定所述网格点的颜色。
在一实施例中,精度处理模块504具体用于将所述多边形网格数据中的每个网格点坐标中的所述高度数据删除;根据所述目标精度和所述颜色,对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色。
在一实施例中,精度处理模块504在执行根据所述目标精度和所述颜色,对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色的步骤时,具体执行:获取所述地形场景的所述高度场数据的数据精度;当所述目标精度与所述数据精度相同时,则将删除了高度数据的所述网格点确定为所述场景地图中的目标点,将所述网格点的颜色确定为目标点的目标颜色;当所述目标精度与所述数据精度不相同时,根据所述目标精度对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点,并根据所述颜色确定所述目标点的目标颜色。
在一实施例中,精度处理模块504在执行根据所述目标精度对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点,并根据所述颜色确定所述目标点的目标颜色的步骤时,具体执行:确定将所述数据精度调整至所述目标精度时,每第一数量的网格点所对应的目标点的第二数量;对于删除了高度数据的所述网格点,确定每第一数量的网格点所对应的所述第二数量的目标点的坐标;对于所述第二数量的每个目标点,根据所述颜色确定所述目标点的目标颜色。
在一实施例中,如图11所示,所述场景地图生成装置500还包括地形层确定模块506。其中,地形层确定模块506,用于根据所述遮罩数据标定并划分所述高度场数据中的第一区域所对应的区域数据,所述第一区域不为所述地形场景中所述遮罩数据所对应的所述地形层的区域。对应的,转换模块502,用于将包括所述第一区域的区域数据的高度场数据转换为多边形网格数据,将所述多边形网格数据中的所述第一区域对应的网格点添加新增的属性值以标记所述第一区域。
当第一区域包括浅海区域时,所述地形层确定模块506,具体用于获取所述遮罩数据所对应的地形层中的第一地形层的高度信息,所述第一地形层包括海洋地形层;根据所述高度信息确定距离所述海洋地形层的海面预设距离之内的第一浅海区域;以所述第一浅海区域为基础,按照预设搜索距离进行点云延伸搜索,以确定一部分的海岸线陆地区域;将所述第一浅海区域和所述海岸线陆地区域确定为所述高度场数据中的所述浅海区域。
当第一区域包括可建造区域时,所述地形层确定模块506,具体用于确定所述地形场景中的地形坡度小于预设坡度的平缓区域;获取所述高度场数据中所述遮罩数据所对应的第二地形层的区域,所述第二地形层不包括所述可建造区域对应的地形层;根据所述平缓区域和所述第二地形层的区域,确定所述高度场数据中的可建造区域。
在一实施例中,如图11所示,所述场景地图生成装置500还包括风格处理模块507。其中,风格处理模块507,用于对所述多边形网格数据中的所述网格点进行颜色平滑处理,以得到颜色平滑处理之后的多边形网格数据;和/或对所述多边形网格数据中的所述网格点进行光照阴影处理,以得到光照阴影处理之后的多边形网格数据;和/或对所述多边形网格数据中的所述网格点进行滤镜处理,以得到滤镜处理之后的多边形网格数据。
在一实施例中,如图11所述,所述场景地图生成装置500还包括描边确定模块508。其中,描边确定模块508,用于在所述多边形网格数据中,确定来自于所述高度场数据中的各地形层所对应的网格数据块;删除所述网格数据块内部的网格点,得到各地形层所对应的区域描边点;设置所述区域描边点的目标颜色为预设颜色。渲染模块505,还用于根据所述目标颜色对所述区域描边点进行渲染,以得到所述地形场景所对应的区域描边图。
在一实施例中,如图11所示,所述场景地图生成装置500还包括映射模块509。其中,映射模块509,用于在所述多边形网格数据中,遍历所述多边形网格数据中的每个网格点,确定所述网格点所属的地形层,并获取所述地形层所对应的地形层编号;对于所述多边形网格数据中的每个网格点,将对应的所述地形层编号映射至通道图对应像素的某一通道中。渲染模块505,还用于渲染并显示所述通道图。
在一实施例中,如图11所示,所述场景地图生成装置500还包括统计模块510。其中,统计模块510,用于遍历所述多边形网格数据中的每个网格点,确定所述网格点所属的地形层,并统计属于同一个地形层的网格点的点数量;获取所述高度场数据转换为所述多边形网格数据的转换密度以及所述高度场数据的数据精度;根据所述转换密度、所述点数量和所述数据精度,计算所述地形场景中每种地形层的面积占比,以及统计所述地形场景中虚拟资源的数量。
上述所有的技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
相应的,本申请实施例还提供一种计算机设备,该计算机设备可以为终端或者服务器。如图12所示,图12为本申请实施例提供的计算机设备的结构示意图。该计算机设备600包括有一个或者一个以上处理核心的处理器601、有一个或一个以上计算机可读存储介质的存储器602及存储在存储器602上并可在处理器上运行的计算机程序。其中,处理器601与存储器602电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器601是计算机设备600的控制中心,利用各种接口和线路连接整个计算机设备600的各个部分,通过运行或加载存储在存储器602内的软件程序(计算机程序)和/或模块,以及调用存储在存储器602内的数据,执行计算机设备600的各种功能和处理数据,从而对计算机设备600进行整体监控。
在本申请实施例中,计算机设备600中的处理器601会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能:
获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据;将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据;对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色;获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色;根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的场景地图。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图12所示,计算机设备600还包括:触控显示屏603、射频电路604、音频电路605、输入单元606以及电源607。其中,处理器601分别与触控显示屏603、射频电路604、音频电路605、输入单元606以及电源607电性连接。本领域技术人员可以理解,图12中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
触控显示屏603可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏603可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器601以确定触摸事件的类型,随后处理器601根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏603而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏603也可以作为输入单元606的一部分实现输入功能。
在本申请实施例中,该触控显示屏603用于呈现图形用户界面以及接收用户作用于图形用户界面产生的操作指令。
射频电路604可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
音频电路605可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路605可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路605接收后转换为音频数据,再将音频数据输出处理器601处理后,经射频电路604以发送给比如另一计算机设备,或者将音频数据输出至存储器602以便进一步处理。音频电路605还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
输入单元606可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源607用于给计算机设备600的各个部件供电。可选的,电源607可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源607还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图12中未示出,计算机设备600还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种场景地图生成方法中的步骤。例如,该计算机程序可以执行如下步骤:
获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据;将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据;对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色;获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色;根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的所述场景地图。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种场景地图生成方法中的步骤,因此,可以实现本申请实施例所提供的任一种场景地图生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种场景地图生成方法、装置、存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (17)

1.一种场景地图生成方法,其特征在于,包括:
获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据;
将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据;
对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色;
获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色;
根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的所述场景地图。
2.根据权利要求1所述的场景地图生成方法,其特征在于,所述根据所述遮罩数据确定所述网格点的颜色的步骤,包括:
获取所述网格点的默认颜色,以及获取所述网格点所属的地形层的初始颜色;
当确定所述网格点不属于任一地形层时,将所述默认颜色确定为所述网格点的颜色;
当确定所述网格点属于所述地形层时,根据所述地形层的所述初始颜色和所述遮罩数据确定所述网格点的颜色。
3.根据权利要求1所述的场景地图生成方法,其特征在于,所述根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色的步骤,包括:
将所述多边形网格数据中的每个网格点坐标中的所述高度数据删除;
根据所述目标精度和所述颜色,对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色。
4.根据权利要求3所述的场景地图生成方法,其特征在于,所述根据所述目标精度和所述颜色,对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色的步骤,包括:
获取所述地形场景的所述高度场数据的数据精度;
当所述目标精度与所述数据精度相同时,则将删除了高度数据的所述网格点确定为所述场景地图中的目标点,将所述网格点的颜色确定为目标点的目标颜色;
当所述目标精度与所述数据精度不相同时,根据所述目标精度对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点,并根据所述颜色确定所述目标点的目标颜色。
5.根据权利要求4所述的场景地图生成方法,其特征在于,所述根据所述目标精度对删除了所述高度数据的所述网格点进行精度处理,以得到所述场景地图中的目标点,并根据所述颜色确定所述目标点的目标颜色的步骤,包括:
确定将所述数据精度调整至所述目标精度时,每第一数量的网格点所对应的目标点的第二数量;
对于删除了高度数据的所述网格点,确定每第一数量的网格点所对应的所述第二数量的目标点的坐标;
对于所述第二数量的每个目标点,根据所述颜色确定所述目标点的目标颜色。
6.根据权利要求1所述的场景地图生成方法,其特征在于,所在所述将所述高度场数据转换为多边形网格数据之前,所述场景地图生成方法还包括:
根据所述遮罩数据标定并划分所述高度场数据中的第一区域所对应的区域数据,所述第一区域不为所述地形场景中所述遮罩数据所对应的所述地形层的区域;
所述将所述高度场数据转换为多边形网格数据,包括:将包括所述第一区域的区域数据的高度场数据转换为多边形网格数据,将所述多边形网格数据中的所述第一区域对应的网格点添加新增的属性值以标记所述第一区域。
7.根据权利要求6所述的场景地图生成方法,其特征在于,所述第一区域包括浅海区域,所述根据所述遮罩数据标定并划分所述高度场数据中的第一区域所对应的区域数据的步骤,包括:
获取所述遮罩数据所对应的地形层中的第一地形层的高度信息,所述第一地形层包括海洋地形层;
根据所述高度信息确定距离所述海洋地形层的海面预设距离之内的第一浅海区域;
以所述第一浅海区域为基础,按照预设搜索距离进行点云延伸搜索,以确定一部分的海岸线陆地区域;
将所述第一浅海区域和所述海岸线陆地区域确定为所述高度场数据中的所述浅海区域。
8.根据权利要求6所述的场景地图生成方法,其特征在于,所述第一区域包括可建造区域,所述根据所述遮罩数据标定并划分所述高度场数据中的第一区域所对应的区域数据的步骤,包括:
确定所述地形场景中的地形坡度小于预设坡度的平缓区域;
获取所述高度场数据中所述遮罩数据所对应的第二地形层的区域;
根据所述平缓区域和所述第二地形层的区域,确定所述高度场数据中的可建造区域。
9.根据权利要求1-8任一项所述的场景地图生成方法,其特征在于,在所述根据所述遮罩数据确定所述网格点的颜色的步骤之后,所述场景地图生成方法还包括:
对所述多边形网格数据中的所述网格点进行颜色平滑处理,以得到颜色平滑处理之后的多边形网格数据;和/或
对所述多边形网格数据中的所述网格点进行光照阴影处理,以得到光照阴影处理之后的多边形网格数据;和/或
对所述多边形网格数据中的所述网格点进行滤镜处理,以得到滤镜处理之后的多边形网格数据。
10.根据权利要求1-8任一项所述的场景地图生成方法,其特征在于,在所述将所述高度场数据转换为多边形网格数据的步骤之后,所述场景地图生成方法还包括:
在所述多边形网格数据中,确定来自于所述高度场数据中的各地形层所对应的网格数据块;
删除所述网格数据块内部的网格点,得到各地形层所对应的区域描边点;
设置所述区域描边点的目标颜色为预设颜色;
根据所述目标颜色对所述区域描边点进行渲染,以得到所述地形场景所对应的区域描边图。
11.根据权利要求10所述的场景地图生成方法,其特征在于,所述确定来自于所述高度场数据中的各地形层所对应的网格数据块的步骤,包括:
遍历所述多边形网格数据中的每个网格点,并确定所述网格点所属的地形层;
将属于同一地形层的网格点作为所述地形层所对应的网格数据块。
12.根据权利要求11所述的场景地图生成方法,其特征在于,
所述将所述高度场数据转换为多边形网格数据时,将所述高度场数据中的地形层转换所述网格点的新增属性的属性值信息,所述新增属性为点层级属性;
所述确定所述网格点所属的地形层的步骤,包括:
获取所述网格点中的点层级属性;
根据所述点层级属性确定所述网格点所对应的地形层。
13.根据权利要求1-8任一项所述的场景地图生成方法,其特征在于,在所述将所述高度场数据转换为多边形网格数据的步骤之后,所述场景地图生成方法还包括:
在所述多边形网格数据中,遍历所述多边形网格数据中的每个网格点,确定所述网格点所属的地形层,并获取所述地形层所对应的地形层编号;
对于所述多边形网格数据中的每个网格点,将对应的所述地形层编号映射至通道图对应像素的某一通道中;
渲染并显示所述通道图。
14.根据权利要求1-8任一项所述的场景地图生成方法,其特征在于,在所述将所述高度场数据转换为多边形网格数据的步骤之后,所述场景地图生成方法还包括:
遍历所述多边形网格数据中的每个网格点,确定所述网格点所属的地形层,并统计属于同一个地形层的网格点的点数量;
获取所述高度场数据转换为所述多边形网格数据的转换密度以及所述高度场数据的数据精度;
根据所述转换密度、所述点数量和所述数据精度,计算所述地形场景中每种地形层的面积占比,以及统计所述地形场景中虚拟资源的数量。
15.一种场景地图生成装置,其特征在于,包括:
获取模块,用于获取游戏的地形场景的高度场数据,所述地形场景包括至少一个地形层,所述高度场数据包括所述地形场景对应的高度数据、所述地形层对应的遮罩数据;
转换模块,用于将所述高度场数据转换为多边形网格数据,其中,所述多边形网格数据上继承有所述高度数据和所述遮罩数据;
颜色确定模块,用于对于所述多边形网格数据中的每个网格点,根据所述遮罩数据确定所述网格点的颜色;
精度处理模块,用于获取所述地形场景对应的场景地图所需的目标精度,并根据所述目标精度和所述颜色,对所述多边形网格数据进行精度处理,以得到所述场景地图中的目标点和所述目标点的目标颜色;
渲染模块,用于根据所述目标颜色对所述目标点进行渲染处理,以得到所述地形场景所对应的所述场景地图。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于处理器进行加载,以执行如权利要求1-14任一项所述的场景地图生成方法中的步骤。
17.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,执行如权利要求1-14任一项所述的场景地图生成方法中的步骤。
CN202210667485.4A 2022-06-13 2022-06-13 场景地图生成方法、装置、存储介质及计算机设备 Pending CN115006842A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210667485.4A CN115006842A (zh) 2022-06-13 2022-06-13 场景地图生成方法、装置、存储介质及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210667485.4A CN115006842A (zh) 2022-06-13 2022-06-13 场景地图生成方法、装置、存储介质及计算机设备

Publications (1)

Publication Number Publication Date
CN115006842A true CN115006842A (zh) 2022-09-06

Family

ID=83075602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210667485.4A Pending CN115006842A (zh) 2022-06-13 2022-06-13 场景地图生成方法、装置、存储介质及计算机设备

Country Status (1)

Country Link
CN (1) CN115006842A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117435110A (zh) * 2023-10-11 2024-01-23 书行科技(北京)有限公司 一种图片处理方法、装置、电子设备和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117435110A (zh) * 2023-10-11 2024-01-23 书行科技(北京)有限公司 一种图片处理方法、装置、电子设备和存储介质

Similar Documents

Publication Publication Date Title
US20230053462A1 (en) Image rendering method and apparatus, device, medium, and computer program product
CN103093499B (zh) 一种适用于网络传输的城市三维模型数据组织方法
CN110706341B (zh) 一种城市信息模型的高性能渲染方法、装置及存储介质
Ruzinoor et al. A review on 3D terrain visualization of GIS data: techniques and software
CN114677467B (zh) 地形图像渲染方法、装置、设备及计算机可读存储介质
CN112717414B (zh) 游戏场景编辑方法、装置、电子设备以及存储介质
CN106611056B (zh) 三维仿真地图的切图方法及装置
CN111445563B (zh) 一种图像生成的方法以及相关装置
CN115006842A (zh) 场景地图生成方法、装置、存储介质及计算机设备
CN112843700B (zh) 地形图像的生成方法、装置、计算机设备和存储介质
CN110738733B (zh) 三维地形模型的生成方法、存储介质、处理器及电子装置
CN117456076A (zh) 一种材质贴图生成方法及相关设备
CN112902968A (zh) 一种高效率三维数字导航地球生成方法及系统
CN115409962B (zh) 虚幻引擎内构建坐标系统的方法、电子设备和存储介质
CN110827400B (zh) 三维场景中对象的模型生成方法、装置以及终端
CN114255312A (zh) 植被图像的处理方法、装置及电子设备
CN114820967A (zh) 一种分层影像数据实时绘制方法及系统
CN115035231A (zh) 阴影烘焙方法、装置、电子设备和存储介质
US11875445B2 (en) Seamless image processing of a tiled image region
CN114419233A (zh) 模型生成方法、装置、计算机设备及存储介质
CN118135081A (zh) 模型生成方法、装置、计算机设备和计算机可读存储介质
CN113908542A (zh) 一种游戏中的地形数据的处理方法及装置
CN117745892A (zh) 粒子生成表现控制方法、装置、存储介质及电子装置
CN111105488A (zh) 成像仿真方法、装置、电子设备和存储介质
CN115888103A (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