CN112316435A - 一种虚拟河流模型制作方法、装置、设备和存储介质 - Google Patents
一种虚拟河流模型制作方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112316435A CN112316435A CN202011295629.5A CN202011295629A CN112316435A CN 112316435 A CN112316435 A CN 112316435A CN 202011295629 A CN202011295629 A CN 202011295629A CN 112316435 A CN112316435 A CN 112316435A
- Authority
- CN
- China
- Prior art keywords
- river
- height
- plot
- height map
- virtual
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000004519 manufacturing process Methods 0.000 title description 3
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 13
- 238000013507 mapping Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000004804 winding Methods 0.000 description 5
- 230000001680 brushing effect Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 241000282414 Homo sapiens Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供了一种虚拟河流模型制作方法、装置、设备和存储介质,其中,该方法包括:获取预先制作完成的多张河流地块高度图,河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度;利用河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,高度图序列中相邻高度图的邻接边的宽度值相同;根据高度图序列,将高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在地表上形成虚拟河流模型,通过上述方法可以降低人工工作量,以及使制作的虚拟河流模型更加真实。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种虚拟河流模型制作方法、装置、设备和存储介质。
背景技术
在3D游戏制作过程中,为了使游戏能够营造出相对真实的环境,需要在游戏中增加河流这一自然景观,在3D游戏中,河流不仅有很强的3D效果,同时,游戏中的河流还需要展现出自然形成的形状。
在现有技术中,为了实现上述效果,通常使用人工刷地形的方式来制作河流,并且,在刷地形的过程中,每次只能针对一个单元格来进行操作,当河流占据较多单元格时,会使人工工作量相对较大。
发明内容
有鉴于此,本申请实施例提供了一种虚拟河流模型制作方法、装置、设备和存储介质,以降低人工工作量。
第一方面,本申请实施例提供了一种虚拟河流模型制作方法,用于在游戏场景的地表中生成虚拟河流,其中,所述地表由多个地表单元格拼接而成,包括:
获取预先制作完成的多张河流地块高度图,所述河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,其中,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,所述高度图序列中相邻高度图的邻接边的宽度值相同;
根据所述高度图序列,将所述高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在所述地表上形成虚拟河流模型。
可选地,所述河流地块高度图包括用于表示其所控制的地表单元格内各个位置上的高度的颜色值。
可选地,对于每张所述河流地块高度图,为该河流地块高度图设置有编号,所述编号包含有该河流地块高度图的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列时,根据所述编号,选择邻接边的宽度值相同的两个河流地块高度图进行两两拼接,以使所述高度图序列中相邻高度图的邻接边的宽度值相同。
可选地,所述编号还包括以下至少一种数值:
用于表示该河流地块高度图中的河流形态的第一数值;
用于表示该河流地块高度图中的河流走向的第二数值;
用于表示该河流地块高度图中的河流边缘曲线种类的第三数值。
可选地,所述河流地块高度图包括第一侧边上河岸的第一宽度值和第二侧边上河岸的第二宽度值;
任意两个所述编号中,所述第一宽度值、所述第二宽度值、所述第一数值、所述第二数值和所述第三数值中至少有一个数值是不同的。
可选地,所述河流地块高度图中包括所述虚拟河流模型的尾部高度图,所述高度图序列的最后一个河流地块高度图为所述尾部高度图。
可选地,所述高度图序列包括的河流地块高度图拼接在一起后形成的所述虚拟河流模型为闭合形状或者至少由一个开口。
第二方面,本申请实施例提供了一种虚拟河流模型制作装置,用于在游戏场景的地表中生成虚拟河流,其中,所述地表由多个地表单元格拼接而成,包括:
获取单元,用于获取预先制作完成的多张河流地块高度图,所述河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,其中,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值;
拼接单元,用于利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,所述高度图序列中相邻高度图的邻接边的宽度值相同;
生成单元,用于根据所述高度图序列,将所述高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在所述地表上形成虚拟河流模型。
可选地,所述河流地块高度图包括用于表示其所控制的地表单元格内各个位置上的高度的颜色值。
可选地,对于每张所述河流地块高度图,为该河流地块高度图设置有编号,所述编号包含有该河流地块高度图的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列时,根据所述编号,选择邻接边的宽度值相同的两个河流地块高度图进行两两拼接,以使所述高度图序列中相邻高度图的邻接边的宽度值相同。
可选地,所述编号还包括以下至少一种数值:
用于表示该河流地块高度图中的河流形态的第一数值;
用于表示该河流地块高度图中的河流走向的第二数值;
用于表示该河流地块高度图中的河流边缘曲线种类的第三数值。
可选地,所述河流地块高度图包括第一侧边上河岸的第一宽度值和第二侧边上河岸的第二宽度值;
任意两个所述编号中,所述第一宽度值、所述第二宽度值、所述第一数值、所述第二数值和所述第三数值中至少有一个数值是不同的。
可选地,所述河流地块高度图中包括所述虚拟河流模型的尾部高度图,所述高度图序列的最后一个河流地块高度图为所述尾部高度图。
可选地,所述高度图序列包括的河流地块高度图拼接在一起后形成的所述虚拟河流模型为闭合形状或者至少由一个开口。
第三方面,本申请实施例提供了一种电子设备,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器运行所述机器可读指令,以执行时执行如上述第一方面方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
在本申请中,预先制作完成的河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,通过河流地块高度图能够得到其所控制的地表单元内的河流边缘的形状,并且,每个河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值,通过每个河流地块高度图中记录的宽度值,能够找到可以使河流边缘平滑拼接的两个河流地块高度图,在获取多张河流地块高度图后,根据对河流地块高度图进行拼接得到高度图序列,其中,高度图序列中相邻高度图的邻接边的宽度值相同,在得到高度图序列后,可以根据高度图序列的顺序确定出整个虚拟河流的边缘,且虚拟河流的边缘是平滑的,然后再根据高度图序列将高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在地表上形成虚拟河流模型,通过上述方法,在河流拼接的过程由于无需人工参与,因此有利于降低人工工作量,并且,由于高度图序列中相邻高度图的邻接边的宽度值相同,因此形成的虚拟河流模型的边缘是平滑的,从而使虚拟河流模型能够展现出自然形成的形状,同时,由于每个河流地块高度图都能够控制其对应的地表单元格内的地表高度,从而可以使不同地表单元格内对应的虚拟河流模型展示出不同的高度,从而使得到的虚拟河流模型具有较强的3D效果。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例一提供的一种虚拟河流模型制作方法的流程示意图;
图2为本申请实施例一提供的一种由地表单元格拼接得到的地表的示意图;
图3为本申请实施例一提供的一种河流地块高度图的示意图;
图4为本申请实施例一提供的一种拼接效果示意图;
图5为本申请实施例一提供的另一种河流地块高度图的示意图;
图6为本申请实施例一提供的一种河流形态的示意图;
图7为本申请实施例一提供的另一种河流地块高度图的示意图;
图8为本申请实施例一提供的一种尾部高度图的示意图;
图9为本申请实施例二提供的一种虚拟河流模型制作装置的结构示意图;
图10为本申请实施例三提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在3D游戏开发中,需要制作游戏场景,在游戏场景中包括大地图,为了使制作的大地图(即:地表)更加真实,需要在大地图中增加河流模型,在制作大地图时,需要使用预设尺寸的地表单元格对地形进行铺设,直至铺满整个地形为止,为了使游戏场景看上去更加逼真,地表单元格的尺寸通常不会制作的较大,因此在铺设地形时会使用到大量的地表单元格,在使用地表单元格对地形进行铺设获得大地图后,再在大地图上进行设置形成河流模型。
在大地图上形成河流模型时,可以使用人工刷地图的方式将河流需要占用的地表单元格凹陷进去,从而形成河流模型,但是在人工刷地图的过程中,每次操作只能对一个地表单元格进行操作,当河流占用的较多的地表单元格时,会使人工的人工量相对较大。
为了降低人工工作量,在现有技术中使用模型拼接的方式来形成河流模型,例如:将一个设定好的河流模型进行切段处理,此时可以得到多个河流模型段落,然后逐段将河流模型段落导入到游戏场景内,再按照设定的拼接方式对多个河流模型段落进行拼接,从而形成河流模型,但是在河流模型的制作过程中,河流模型的制作精细度相对较差,在将河流模型段落导入到游戏场景后,相邻的两个地表单元格可能会出现重复的河流边缘样式,从而导致形成的河流模型有重复感,进而降低了河流模型的真实度。
为了降低人工工作量,以及提高河流模型的真实度,本申请实施例提供了一种虚拟河流模型制作方法、装置、设备和存储介质,预先制作多张河流地块高度图,其中,河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,通过地表高度可以使河流边缘占用的地表单元格形成高低不同的地势,并且,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值,在拼接时,相邻高度图的邻接边的宽度值相同,因此在根据河流地块高度图对地表单元格进行凹陷处理后,相邻的两个地表单元格所形成的河流边缘是平滑的,并且,在拼接过程中,相邻的两个高度图是按照上述拼接方式随机组合在一起的,因此该两个高度图占用的地表单元格会形成不同形状的边缘,从而有利于避免形成的河流模型出现重复感,进而使得河流模型的真实度相对较高,并且,由于河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,从而可以使河流模型具有较强的3D效果,同时,由于在拼接过程中无需人工参与,因此也有利于降低人工工作量。
以下为本申请实施例的详细说明。
实施例一
图1为本申请实施例一提供的一种虚拟河流模型制作方法的流程示意图,用于在游戏场景的地表中生成虚拟河流,其中,所述地表由多个地表单元格拼接而成,如图1所示,该方法包括以下步骤:
步骤101、获取预先制作完成的多张河流地块高度图,所述河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,其中,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值。
步骤102、利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,所述高度图序列中相邻高度图的邻接边的宽度值相同。
步骤103、根据所述高度图序列,将所述高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在所述地表上形成虚拟河流模型。
具体的,图2为本申请实施例一提供的一种由地表单元格拼接得到的地表的示意图,如图2所示,游戏场景中的地表可以由多个地表单元格(一个地表单元格如图2中虚线框所示)拼接铺设而成,每个地表单元格的形状可以为正方形(当然也可以为其他形状,例如:等边三角形或六边形等),关于一个地表单元格的尺寸可以根据实际需要进行设定,在此不做具体限定。以下以正方形的地表单元格为例进行说明。
在得到地表后,还需要预先制作多张河流地块高度图,其中,一个河流地块高度图对应一个地表单元格,即:一个河流地块高度图的尺寸与一个地表单元格的尺寸是相同的,使用一个河流地块高度图就可以覆盖一个完整的地表单元格,或者,多个河流地块高度图对应一个地表单元格,以河流地块高度图和地表单元格均为正方形为例,4个或者8个河流地块高度图拼接在一起后的尺寸与一个地表单元格的尺寸相同,使用拼接在一起河流地块高度图可以覆盖一个完整的地表单元格。并且预先制作多张河流地块高度图展示的是虚拟河流的边缘,即:一个河流地块高度图中包括两部分,一部分是虚拟河流,另一部分是河岸,虚拟河流和河岸的接触位置为虚拟河流边缘,同时,由于虚拟河流部分和河岸部分的高度是不同的,因此河流地块高度图还能够控制虚拟河流边缘所处地表单元格内的地表高度,以及,为了使拼接在一起的河流地块高度图能够形成平滑的河流边缘,每个河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值,当两个河流地块高度图的邻接边的宽度值相同时,可以形成平滑的河流边缘。
宽度值为该河流地块高度图中能够进行拼接的边中河岸部分所占的数值,该数值可以是河岸部分占据的边的比例,或者可以是河岸部分所占的单位长度的数量,再或者是河岸部分所占据的边的长度,其中,一个河流地块高度图中包括两个能够进行拼接的边,图3为本申请实施例一提供的一种河流地块高度图的示意图,如图3中所示的形状为正方形的河流地块高度图,其中,该河流地块高度图可以划分为8×8的格子,可以将该河流地块高度图的两个侧边上的河岸占据的格子的数量作为该河流地块高度图记录的河岸的宽度值,以图3为例,当左侧的河岸占据3个格子,右侧河岸占据5个格子时,该河流地块高度图记录的两个河岸的宽度值分别为3和5,并且,图3所示的河流地块高度图中,左侧的边和右侧的边均为能够进行拼接的边,同时,该河流地块高度图还能够控制其所处地表单元格内的地表高度,例如:该河流地块高度图的每个像素点都对应一个数值,通过该数值来控制地表单元格内对应位置处的地表高度,当将图3所示的河流地块高度图设置到对应的地表单元格内时,可以根据河流地块高度图对该地表单元格内进行凹陷处理,从而形成该地表单元格对应的河岸,并且在使用图3所示的河流地块高度图进行拼接时,可以在图3所示的河流地块高度图的左侧选择右侧边的河岸宽度值为3的河流地块高度图,在图3所示的河流地块高度图的右侧选择左侧边的河岸宽度值为5的河流地块高度图,拼接效果图具体如图4所示,其中,图4为本申请实施例一提供的一种拼接效果示意图,如图4所示,在将三个河流地块高度图拼接在一起后可以形成一个跨度为三个地表单元格的河岸,然后再按照上述拼接方式继续拼接,从而可以得到较长的河岸,通过上述方式形成的河岸中,由于两个相邻的地表单元格对应的河岸的形状是不同的,因此有利于避免出现重复感,并且,如图4所示,两个相邻的河流地块高度图的接触边分别为这两个河流地块高度图的邻接边,当两个相邻高度图的邻接边的宽度值相同时,可以形成相对平滑的河流边缘。
在得到高度图序列时,可以先设定待生成虚拟河流能够占据的地表单元格的范围,然后根据该范围进行高度图拼接,最后得到的虚拟河流模型位于该范围内,或者按照邻接边的宽度值相等的原则进行随机拼接得到虚拟河流模型,再或者,可以预先设定待生成的虚拟河流的河流走向,例如:设定待生成的虚拟河流的河流走向可以是自东向西,或者由南向北的,再例如:如果生成的虚拟河流模型是比较蜿蜒的,那么可以设定各蜿蜒处的蜿蜒方向,以及两个蜿蜒处之间的河流方向,并各蜿蜒方向和河流方向按照一定顺序组合在一起构成河流走向,在得到待生成的虚拟河流的河流走向后,可以按照该河流走向对河流地块高度图进行拼接,以使拼接到一起的河流地块高度图所形成的河岸的走向与河流方向相同,从而得到河流地块高度图的高度图序列。
在得到高度图序列后,可以确定出一个完整的河岸边缘,位于河岸之间的部分为虚拟河流模型本体,因此可以将高度图序列包括的河流地块高度图影射到对应的地表单元格上,然后河流地块高度图对对应的地表单元格进行凹陷处理,进而在地表上形成虚拟河流,以图4为例,图4中的三个河流地块高度图按照从左到右的顺序分别影射到标识为地表单元格1、地表单元格2和地表单元格3的地表单元格上,按照图4中左侧的河流地块高度图对地表单元格1中的各个位置进行凹陷,按照图4中中间的河流地块高度图对地表单元格2中的各个位置进行凹陷,按照图4中右侧的河流地块高度图对地表单元格3中的各个位置进行凹陷,以此类推进行凹陷,关于具体的凹陷方式在后续有详细说明,其中,在进行凹陷后,河岸部分的高度高于河流部分的高度,从而形成一个清晰的河边边缘,位于河边边缘内的区域为虚拟河流模型。
需要说明的是,形成的虚拟河流模型可以是开口的,开口的数量可以至少为一个,或者也可以是闭合的,关于形成的虚拟河流模型的样式可以根据实际需要进行设定,在此不做具体限定。
通过上述方式,在拼接过程中由于无需人工参与,因此有利于降低人工工作量,并且,在拼接过程中,相邻的两个高度图是可以是随机确定的,因此该两个高度图占用的地表单元格会形成不同形状的边缘,从而有利于避免形成的河流模型出现重复感,进而使得河流模型的真实度相对较高,同时,由于河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,从而可以使河流模型具有较强的3D效果。
在一个可行的实施方案中,所述河流地块高度图包括用于表示其所控制的地表单元格内各个位置上的高度的颜色值。
具体的,图5为本申请实施例一提供的另一种河流地块高度图的示意图,如图5所示的河流地块高度图中包括虚拟河流部分和河岸部分,虚拟河流部分和河岸部分的接触处为虚拟河流边缘,其中,虚拟河流部分和河岸部分分别为使用虚线框圈选的部分,图5中不同的填充图案表示不同的颜色,不同的颜色用于表示不同的高度,在将如图5所示的河流地块高度图影射到对应的地表单元格后,可以根据河流地块高度图中不同的颜色对地表单元格进行凹陷处理,从而形成不同的地势,并且,虚拟河流部分内的颜色值所表示的高度要低于河岸部分内的颜色值所表示的高度,从而可以使虚拟河流部分形成低洼地势,以便形成虚拟河流模型。
需要说明的是,图5所示的任一个填充图案的覆盖区域仅是示意性的说明,任一个填充图案的覆盖区域可以是像素级的,即:河流地块高度图包括的各像素分别对应一个颜色值。河流地块高度图包括的颜色值可以为黑白值,进一步的,河流地块高度图可以为一个黑白图,其中,白色为0,黑色为255,且,255所表示的高度高于0所表示的高度,例如:河岸部分的黑白值均为255,虚拟河流部分的黑白值为小于255的值,关于河流地块高度图中的颜色值的具体表示方式和每个颜色值的控制范围可以根据实际需要进行设定,在此不做具体限定。
在一个可行的实施方案中,对于每张所述河流地块高度图,为该河流地块高度图设置有编号,所述编号包含有该河流地块高度图的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列时,根据所述编号,选择邻接边的宽度值相同的两个河流地块高度图进行两两拼接,以使所述高度图序列中相邻高度图的邻接边的宽度值相同。
具体的,为了便于按照邻接边的宽度值相等的拼接原则对河流地块高度图进行拼接,为每个河流地块高度图设置编号,编号中包括该河流地块高度图的宽度值,由于每个河流地块高度图中均包括一组宽度值,即:两个数值,因此在编号中这两个数值需要按照一定顺序进行排列,以河岸位于河流地块高度图的左右两侧为例(即:图3所示的河流地块高度图),编号中的两个数值按照从左到右的顺序排列,以图3为例,编号可以为XX35XX,其中,X用于表示其他属性的数值,这样在进行拼接时,编号为XX53XX,或者编号为XX63XX,再或者编号为XX93XX的河流地块高度图可以拼接在图3所示的河流地块高度图的左侧,编号为XX53XX,或者编号为XX54XX,再或者编号为XX57XX的河流地块高度图可以拼接在图3所示的河流地块高度图的右侧,依次类推,直至得到高度图序列。
在一个可行的实施方案中,所述编号还包括以下至少一种数值:
用于表示该河流地块高度图中的河流形态的第一数值;
用于表示该河流地块高度图中的河流走向的第二数值;
用于表示该河流地块高度图中的河流边缘曲线种类的第三数值。
具体的,河流形态为河流边缘的走向形态,河流形态可以包括:边、外转角、内转角和补角几种,关于河流形态的具体形式可参考图6所示的图形,其中,图6为本申请实施例一提供的一种河流形态的示意图,如图6所示,当河流形态包括边、外转角、内转角和补角几种时,在按照待生成的虚拟河流的河流走向对河流地块高度图进行拼接时,可供选择的种类会有多种,从而可以使河流的细节形态更加多样,以图3为例,图3所示的河流地块高度图的左侧选择一个边的河岸宽度值为3的河流地块高度图,如果形态为边的河流形态中包括河岸宽度值为3且能够拼接在图3所示的河流地块高度图的左侧时,可以形成继续向左延伸的河流边缘,如果形态为外转角的河流形态中包括河岸宽度值为3且能够拼接在图3所示的河流地块高度图的左侧时,可以使河流边缘形成左转弯的形态,如果形态为内转角的河流形态中包括河岸宽度值为3且能够拼接在图3所示的河流地块高度图的左侧时,可以使河流边缘形成向上转弯的形态,如果形态为补角的河流形态中包括河岸宽度值为3且能够拼接在图3所示的河流地块高度图的左侧时,可以使河流边缘形成缺口的形态。
河流走向为河流边缘的延伸方向,用于表示将该河流地块高度图铺设到对应的地表单元格后会使虚拟河流模型发生何种方向上的延伸,延伸方向一般包括横向延伸和纵向延伸等,根据河流走向可以得到与待生成的虚拟河流的河流走向相同的方向。
河流边缘曲线种类用于区分具有相同宽度值的河流地块高度图中河流边缘曲线形状的,图7为本申请实施例一提供的另一种河流地块高度图的示意图,如图3和图7所示的两个河流地块高度图,二者具有相同的河流形态、河流走向和宽度值,但是二者的河流边缘曲线是不同的,对同一个河流地块高度图设置不同的河流边缘曲线,可以使河流边缘具有更多的细节样式变化。
在选择进行后续拼接的河流地块高度图时,可以先确定出将要使用何种河流形态的第一河流地块高度图,然后根据待生成的虚拟河流的河流走向从第一河流地块高度图中选择将要使用何种河流走向第二河流地块高度图,在从第二河流地块高度图中选择与上一个河流地块高度图的临接编的宽度值相同的第三河流地块高度图,最后从第三河流地块高度图中按照一定的筛选规定确定具有使用哪种河流边缘曲线种类,从而确定出一张能够进行拼接的河流地块高度图,例如:当前一张河流地块高度图中河流形态的第一数值为1、河流走向的第二数值为0,宽度值分别为7和6,河流边缘曲线种类的第三数值为1时,前一张河流地块高度图的编号可以为10761,在选择位于其右侧的后一张河流地块高度图时,需要先确定出使用何种形态的河流地块高度图,然后在从该形态下的河流地块高度图中选择使用何种河流走向的河流地块高度图,再从该河流走向的河流地块高度图中选择与前一张河流地块高度图相邻的边的宽度值为6河流地块高度图(另外一个边的宽度值可以为任意),最后再从满足上述所有要求的河流地块高度图中确定出一张河流地块高度图,当河流边缘曲线种类的第三数值包括1、2和3时,可以选择第三数值为1、2、3中的一个来作为最后确定出来的河流地块高度图,当确定出后一张河流地块高度图的河流形态的第一数值为1,河流走向的第二数值为0,宽度值分别为6和7(当然也可以是6和9,或者是6和2等),河流边缘曲线种类的第三数值为1时,后一张的河流地块高地图的编号为10671,以此类推,直至得到一个完整的虚拟河流。
需要说明的是,图6所示的河流形态仅是示意性的说明,在图6所示的河流形态的基础上,每个河流地块高度图中还可以包括一些细小的分支、独立存在的小块地面等内容,每种河流形态下的河流地块高度图中还包括多种河流走向的河流地块高度图,每种河流走向的河流地块高度图下还包括多种宽度值(包括两个数值)的河流地块高度图,每种宽度值的河流地块高度图中还包括多种河流边缘曲线种类的河流地块高度图,关于预先制作完成的多张河流地块高度图具体包括的内容可以根据实际需要进行设定,在此不做具体限定。
在一个可行的实施方案中,所述河流地块高度图包括第一侧边上河岸的第一宽度值和第二侧边上河岸的第二宽度值;任意两个所述编号中,所述第一宽度值、所述第二宽度值、所述第一数值、所述第二数值和所述第三数值中至少有一个数值是不同的。
具体的,当上述数值中有一个数值不同时,可以使制作的河流地块高度图所生成的河流边缘的形状发生不同的变化,从而可以使最后生成的虚拟河流模型的细节变化更加多样,同时有利于避免河流边缘出现重复感。
在一个可行的实施方案中,所述河流地块高度图中包括所述虚拟河流模型的尾部高度图,所述高度图序列的最后一个河流地块高度图为所述尾部高度图。
具体的,由于真实的自然河流的尾部与自然河流中间部分和前端部分会有很大的不同,因此在河流地块高度图中设置尾部高度图后,可以使生成的虚拟河流模型更加真实且自然,图8为本申请实施例一提供的一种尾部高度图的示意图,如图8所示,在选择具体使用哪个尾部高度图进行最后的拼接时,可以根据前一张河流地块高度图的河岸的宽度值和待生成的虚拟河流的河流走向等因素进行选择。
在一个可行的实施方案中,所述高度图序列包括的河流地块高度图拼接在一起后形成的所述虚拟河流模型为闭合形状或者至少由一个开口。
具体的,在真实的自然河流中必然包括两个河岸,因此在使用河流地块高度图进行拼接时,必须保证能够形成两个河岸,以模拟真实的自然河流,但是真实的自然河流中,有些河流是闭合形状的,即:两个河岸彼此连接在一起,但是有些河流是有开口的,且至少包括一个开口,即:两个河岸的一端连接,另一端不连接,或者两个河岸的两端都不连接,再或者,包括三个河岸,且三个河岸都不相互连接,从而形成三个开口,为了模拟出真实的自然河流,河流地块高度图拼接在一起后形成的所述虚拟河流模型可以是闭合的,或者也可以是包括至少一个开口。
需要说明的是,形成的虚拟河流模型的具体样式可以根据实际需要进行设定,在此不做具体限定。
实施例二
图9为本申请实施例二提供的一种虚拟河流模型制作装置的结构示意图,用于在游戏场景的地表中生成虚拟河流,其中,所述地表由多个地表单元格拼接而成,如图9所示,该装置包括:
获取单元91,用于获取预先制作完成的多张河流地块高度图,所述河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,其中,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值;
拼接单元92,用于利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,所述高度图序列中相邻高度图的邻接边的宽度值相同;
生成单元93,用于根据所述高度图序列,将所述高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在所述地表上形成虚拟河流模型。
在一个可行的实施方案中,所述河流地块高度图包括用于表示其所控制的地表单元格内各个位置上的高度的颜色值。
在一个可行的实施方案中,对于每张所述河流地块高度图,为该河流地块高度图设置有编号,所述编号包含有该河流地块高度图的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列时,根据所述编号,选择邻接边的宽度值相同的两个河流地块高度图进行两两拼接,以使所述高度图序列中相邻高度图的邻接边的宽度值相同。
在一个可行的实施方案中,所述编号还包括以下至少一种数值:
用于表示该河流地块高度图中的河流形态的第一数值;
用于表示该河流地块高度图中的河流走向的第二数值;
用于表示该河流地块高度图中的河流边缘曲线种类的第三数值。
在一个可行的实施方案中,所述河流地块高度图包括第一侧边上河岸的第一宽度值和第二侧边上河岸的第二宽度值;
任意两个所述编号中,所述第一宽度值、所述第二宽度值、所述第一数值、所述第二数值和所述第三数值中至少有一个数值是不同的。
在一个可行的实施方案中,所述河流地块高度图中包括所述虚拟河流模型的尾部高度图,所述高度图序列的最后一个河流地块高度图为所述尾部高度图。
在一个可行的实施方案中,所述高度图序列包括的河流地块高度图拼接在一起后形成的所述虚拟河流模型为闭合形状或者至少由一个开口。
关于实施例二的相关说明可参考实施例一的详细说明,在此不再详细说明。
实施例三
图10为本申请实施例三提供的一种电子设备的结构示意图,包括:处理器1001、存储介质1002和总线1003,所述存储介质1002存储有所述处理器1001可执行的机器可读指令,当电子设备运行上述的虚拟河流模型制作方法时,所述处理器1001与所述存储介质1002之间通过总线1003通信,所述处理器1001执行所述机器可读指令,以执行实施例一中所述的方法步骤。
实施例四
本申请实施例四还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行实施例一中所述的方法步骤。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种虚拟河流模型制作方法,用于在游戏场景的地表中生成虚拟河流,其中,所述地表由多个地表单元格拼接而成,其特征在于,包括:
获取预先制作完成的多张河流地块高度图,所述河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,其中,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,所述高度图序列中相邻高度图的邻接边的宽度值相同;
根据所述高度图序列,将所述高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在所述地表上形成虚拟河流模型。
2.如权利要求1所述的方法,其特征在于,所述河流地块高度图包括用于表示其所控制的地表单元格内各个位置上的高度的颜色值。
3.如权利要求1所述的方法,其特征在于,对于每张所述河流地块高度图,为该河流地块高度图设置有编号,所述编号包含有该河流地块高度图的宽度值;
利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列时,根据所述编号,选择邻接边的宽度值相同的两个河流地块高度图进行两两拼接,以使所述高度图序列中相邻高度图的邻接边的宽度值相同。
4.如权利要求3所述的方法,其特征在于,所述编号还包括以下至少一种数值:
用于表示该河流地块高度图中的河流形态的第一数值;
用于表示该河流地块高度图中的河流走向的第二数值;
用于表示该河流地块高度图中的河流边缘曲线种类的第三数值。
5.如权利要求4所述的方法,其特征在于,所述河流地块高度图包括第一侧边上河岸的第一宽度值和第二侧边上河岸的第二宽度值;
任意两个所述编号中,所述第一宽度值、所述第二宽度值、所述第一数值、所述第二数值和所述第三数值中至少有一个数值是不同的。
6.如权利要求1所述的方法,其特征在于,所述河流地块高度图中包括所述虚拟河流模型的尾部高度图,所述高度图序列的最后一个河流地块高度图为所述尾部高度图。
7.如权利要求1所述的方法,其特征在于,所述高度图序列包括的河流地块高度图拼接在一起后形成的所述虚拟河流模型为闭合形状或者至少由一个开口。
8.一种虚拟河流模型制作装置,用于在游戏场景的地表中生成虚拟河流,其中,所述地表由多个地表单元格拼接而成,其特征在于,包括:
获取单元,用于获取预先制作完成的多张河流地块高度图,所述河流地块高度图用于控制虚拟河流边缘所处地表单元格内的地表高度,其中,每个所述河流地块高度图记录有其所控制的地表单元格两个侧边上河岸的宽度值;
拼接单元,用于利用所述河流地块高度图拼接形成与待生成虚拟河流的边缘所处地表单元格对应的高度图序列,其中,所述高度图序列中相邻高度图的邻接边的宽度值相同;
生成单元,用于根据所述高度图序列,将所述高度图序列包括的河流地块高度图影射到对应的地表单元格上,以根据河流地块高度图对地表单元格进行凹陷处理,从而在所述地表上形成虚拟河流模型。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器运行所述机器可读指令,以执行如权利要求1至7任一所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011295629.5A CN112316435A (zh) | 2020-11-18 | 2020-11-18 | 一种虚拟河流模型制作方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011295629.5A CN112316435A (zh) | 2020-11-18 | 2020-11-18 | 一种虚拟河流模型制作方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112316435A true CN112316435A (zh) | 2021-02-05 |
Family
ID=74322629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011295629.5A Pending CN112316435A (zh) | 2020-11-18 | 2020-11-18 | 一种虚拟河流模型制作方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112316435A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107251100A (zh) * | 2015-02-27 | 2017-10-13 | 微软技术许可有限责任公司 | 将物理受限的虚拟环境模制和锚定到现实环境 |
CN111617485A (zh) * | 2020-06-04 | 2020-09-04 | 广州西山居世游网络科技有限公司 | 一种虚拟地形场景的制作方法及装置 |
CN111862324A (zh) * | 2020-07-10 | 2020-10-30 | 完美世界(北京)软件科技发展有限公司 | 水系的烘焙方法及装置、存储介质、电子装置 |
-
2020
- 2020-11-18 CN CN202011295629.5A patent/CN112316435A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107251100A (zh) * | 2015-02-27 | 2017-10-13 | 微软技术许可有限责任公司 | 将物理受限的虚拟环境模制和锚定到现实环境 |
CN111617485A (zh) * | 2020-06-04 | 2020-09-04 | 广州西山居世游网络科技有限公司 | 一种虚拟地形场景的制作方法及装置 |
CN111862324A (zh) * | 2020-07-10 | 2020-10-30 | 完美世界(北京)软件科技发展有限公司 | 水系的烘焙方法及装置、存储介质、电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100570641C (zh) | 基于物理的植物叶子模拟方法 | |
CN107330956A (zh) | 一种漫画手绘图无监督上色方法及装置 | |
CN109427088A (zh) | 一种模拟光照的渲染方法及终端 | |
AU2020416878B2 (en) | Map generation method and apparatus, electronic device, and computer storage medium | |
JP4842677B2 (ja) | 地形模型造形システム及び地形模型製造方法 | |
CN108057245B (zh) | 地图的生成方法和装置、存储介质及终端 | |
US11880930B2 (en) | System and method for content creation via interactive layers | |
CN107945280A (zh) | 一种模拟真实星球生态分布的方法 | |
CN112007359B (zh) | 一种图像展示方法、可读存储介质和计算机设备 | |
Smelik et al. | A proposal for a procedural terrain modelling framework | |
CN112316435A (zh) | 一种虚拟河流模型制作方法、装置、设备和存储介质 | |
Antoniuk et al. | Generation of complex underground systems for application in computer games with schematic maps and L-systems | |
CN111494958B (zh) | 随机生成迷宫地图的方法和装置 | |
Ziegler et al. | Generating real-time strategy heightmaps using cellular automata | |
CN112634399A (zh) | 封闭曲线生成方法、装置、电子设备及可读存储介质 | |
CN113181655B (zh) | 地形构造方法、装置、电子设备和存储介质 | |
Temuçin et al. | Using cellular automata as a basis for procedural generation of organic cities | |
KR101743516B1 (ko) | 디지털 잎 저작 장치 및 방법 | |
Suanto et al. | Modular technique of 3D modeling and procedural texturing for 3D Game Environment Design of “Jurnal Pahlawan” | |
Melnychuk | Landscape generation using procedural generation techniques | |
Eldstål | Generating Procedural Environments using Masks: Layered Image Document to Real-time environment | |
Song et al. | Development and implementation of pixel art game based on human-computer interaction | |
de la Re et al. | Tools for procedural generation of plants in virtual scenes | |
Tang | City generator: GIS driven genetic evolution in urban simulation. | |
McAtamney et al. | Using the Crytek game engine in the Dublin Institute of Technology |
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 |