CN113018847A - 体素建筑的生成方法、装置、电子设备及存储介质 - Google Patents
体素建筑的生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113018847A CN113018847A CN202110350358.7A CN202110350358A CN113018847A CN 113018847 A CN113018847 A CN 113018847A CN 202110350358 A CN202110350358 A CN 202110350358A CN 113018847 A CN113018847 A CN 113018847A
- Authority
- CN
- China
- Prior art keywords
- building
- matrix
- target
- voxel
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 239000011159 matrix material Substances 0.000 claims abstract description 149
- 239000000463 material Substances 0.000 claims abstract description 69
- 238000010586 diagram Methods 0.000 claims description 44
- 238000013507 mapping Methods 0.000 claims description 34
- 238000005034 decoration Methods 0.000 claims description 16
- 238000010276 construction Methods 0.000 claims description 11
- 238000009877 rendering Methods 0.000 claims description 5
- 244000035744 Hura crepitans Species 0.000 description 5
- 238000004422 calculation algorithm 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
- 238000005295 random walk Methods 0.000 description 3
- 239000013077 target material Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000013179 statistical model 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/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
-
- 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/80—Special adaptations for executing a specific game genre or game mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- 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
-
- 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6045—Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
-
- 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/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
-
- 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/80—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 specially adapted for executing a specific type of game
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种体素建筑的生成方法、装置、电子设备及存储介质,其中,所述体素建筑的生成方法包括:接收用户对目标建筑的生成请求,根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息;根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵;基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。上述方案,能够实时生成多样化的体素建筑。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种体素建筑的生成方法、装置、电子设备及存储介质。
背景技术
沙盒游戏是一种自由度非常高的游戏类型,它允许玩家充分发挥想象力,利用游戏中的资源创造出各种结构。体素类沙盒游戏是沙盒游戏的一个重要子类,其代表作品为Minecraft,它的特点是整个游戏世界被抽象为3D网格,玩家可以在网格中的任意位置添加或删除材料块,实现3D模型创作的目的。
由于自由度极高,有经验的玩家可以几乎不受约束地在体素类游戏中进行3D创作,但对于普通玩家尤其是新手而言,这好比在3D白纸上进行作画,不仅需要空间想象力、建筑美学知识和3D游戏操作经验,还需要投入大量的时间和精力。
发明内容
本申请主要解决的技术问题是提供一种体素建筑的生成方法、装置、电子设备及存储介质,能够实时生成多样化的体素建筑。
为了解决上述问题,本申请第一方面提供了一种体素建筑的生成方法,所述体素建筑的生成方法包括:接收用户对目标建筑的生成请求,根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息;根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵;基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。
为了解决上述问题,本申请第二方面提供了一种体素建筑的生成模型,所述体素建筑的生成模型包括:随机参数生成模块,用于在结构参数和材质配置的取值范围内,通过随机选取或用户指定来确定结构参数信息和材质配置信息;矩阵构建模块,用于根据所述结构参数信息和所述材质配置信息生成目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵。
为了解决上述问题,本申请第三方面提供了一种体素建筑的生成装置,所述体素建筑的生成装置包括:请求接收模块,所述请求接收模块用于接收用户对目标建筑的生成请求;参数生成模块,所述参数生成模块用于根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息;矩阵构建模块,所述矩阵构建模块用于根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵;建筑生成模块,所述建筑生成模块用于基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。
为了解决上述问题,本申请第四方面提供了一种电子设备,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现上述第一方面的体素建筑的生成方法。
为了解决上述问题,本申请第五方面提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现上述第一方面的体素建筑的生成方法。
本发明的有益效果是:区别于现有技术的情况,本申请的体素建筑的生成方法中,在接收到用户对目标建筑的生成请求后,可以根据生成请求确定目标建筑的结构参数信息和材质配置信息,然后根据结构参数信息和材质配置信息构建目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵,于是可以基于元素识别信息矩阵和状态信息矩阵,生成目标建筑,从而可以快速生成满足玩家要求的体素建筑,将原本需要几小时才能完成的建筑,在几百毫秒内完成,建造速度提高了上万倍。能够显著降低体素建筑创作门槛,提高普通新手玩家创造体素建筑的热情。
附图说明
图1是本申请体素建筑的生成方法一实施例的流程示意图;
图2是图1中步骤S11一实施例的流程示意图;
图3是图2中步骤S113一实施例的流程示意图;
图4是本申请生成的随机多边形一实施例的示意图;
图5是本申请垂直结构一实施例的示意图;
图6是本申请屋顶结构一实施例的示意图;
图7是本申请外饰配置一实施例的示意图;
图8是本申请材质映射一实施例的示意图;
图9是图1中步骤S12一实施例的流程示意图;
图10是图9中步骤S121一实施例的流程示意图;
图11是本申请生成建筑结构图一实施例的示意图;
图12是图9中步骤S122一实施例的流程示意图;
图13是本申请二维矩阵点的高度的示意图;
图14是本申请三维建筑结构矩阵一实施例的示意图;
图15是本申请朝向调整一实施例的示意图;
图16是本申请体素建筑的生成模型一实施例的框架示意图;
图17是本申请体素建筑的生成模型另一实施例的框架示意图;
图18是本申请体素建筑的生成装置一实施例的框架示意图;
图19是本申请电子设备一实施例的框架示意图;
图20是本申请计算机可读存储介质一实施例的框架示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请体素建筑的生成方法一实施例的流程示意图。具体而言,本实施例中的体素建筑的生成方法可以包括如下步骤:
步骤S11:接收用户对目标建筑的生成请求,根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息。
本申请的目标建筑为体素建筑,体素(Voxel)是体积像素(Volume Pixel)的简称,概念上类似二维空间的最小单位像素,是三维空间分割上的最小单位。可以理解的是,利用算法生成的体素建筑需要保证建筑结构的合理性,即生成的体素建筑应具备一般建筑的结构特征,例如包含围墙、门窗和屋顶等等,而且结构完整,并且还需要保证生成过程的可控性,即生成体素建筑时,支持玩家指定建筑的部分或全部属性,比如建筑的大小、层数和材质等等。因此,在接收到用户对目标建筑的生成请求后,需要根据相关的生成请求确定目标建筑的结构参数信息和材质配置信息,以便后续生成目标建筑。
具体地,结构参数信息至少包括多边形参数、垂直结构参数、屋顶结构参数和外饰配置参数;材质配置信息至少包括材质配置参数和门窗配置参数。其中,多边形参数指的是体素建筑的建筑结构在地面上的投影的形状和大小,在体素建筑空间里,方块是体素建筑的构建单元,因此体素建筑的建筑结构在地面上的投影为多边形;垂直结构参数指的是体素建筑在垂直方向上的结构类型;屋顶结构参数指的是体素建筑的屋顶的结构类型;外饰配置参数指的是体素建筑的外部装饰的配置情况;材质配置参数指的是体素建筑的各建筑结构的材质配置情况;门窗配置参数指的是体素建筑的各建筑结构的门窗配置情况。
步骤S12:根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵。
步骤S13:基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。
体素建筑可以通过三维矩阵来描述,包括元素识别信息矩阵和状态信息矩阵。体素建筑的元素识别信息矩阵包括每个方块的元素识别信息,状态信息矩阵包括元素识别信息矩阵中每个方块对应的状态信息。因此,可以根据每个方块的结构参数信息和材质配置信息,构建出目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵,从而可以基于元素识别信息矩阵和状态信息矩阵,生成目标建筑。具体地,通过使用不同的方块以及在不同位置处进行搭建,可以创建出不同的体素建筑。体素建筑用一组等大的三维矩阵描述,具体为所有方块的元素识别信息矩阵(Block_IDw*h*l)和状态信息矩阵(Block_dataw*h*l),其中w、l与h分别为游戏空间在宽,长和高三个方向上的大小。矩阵Block_IDw*h*l用来描述空间中每个位置对应方块的元素识别信息,即方块标识码(Block_ID)。体素游戏中,所有不同种类的方块均具有唯一的Block_ID,Block_ID通常为整型。游戏中的所有Block_ID可以保存在Block_ID列表中,可以在Block_ID列表选取其中任意一个Block_ID来进行使用。而矩阵Block_dataw*h*l则用来描述Block_IDw*h*l中每个方块的状态信息,比如方块摆放的朝向。Block_IDw*h*l和Block_dataw*h*l的值均为整型。一个完全初始化的游戏世界通常可用0(空气的方块ID)填充的Block_IDw*h*l和Block_dataw*h*l来表示。玩家在游戏中创造一个大小为w*h*l的建筑,本质上是在修改初始化的Block_IDw*h*l和Block_dataw*h*l两个矩阵,即空气方块替换为其他的方块ID并修改其朝向。
上述方案,在接收到用户对目标建筑的生成请求后,可以根据生成请求确定目标建筑的结构参数信息和材质配置信息,然后根据结构参数信息和材质配置信息构建目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵,于是可以基于元素识别信息矩阵和状态信息矩阵,生成目标建筑,从而可以快速生成满足玩家要求的体素建筑,将原本需要几小时才能完成的建筑,在几百毫秒内完成,建造速度提高了上万倍。能够显著降低体素建筑创作门槛,提高普通新手玩家创造体素建筑的热情。
请结合图2,图2是图1中步骤S11一实施例的流程示意图。在一实施例中,上述步骤S11具体可以包括:
步骤S111:在接收到用户对所述目标建筑的生成请求时,判断所述生成请求中是否包含用户指定的参数信息。若包含用户指定的参数信息,则执行步骤S112;若未包含用户指定的参数信息,则执行步骤S113。
步骤S112:根据所述用户指定的参数信息确定对应的结构参数信息和材质配置信息。
步骤S113:随机选取对应的结构参数信息和材质配置信息。
在接收到用户对目标建筑的生成请求后,需要先判断用户的生成请求中是否包含用户指定的参数信息,以确定用户是否对目标建筑存在参数要求。在生成请求中包含用户指定的参数信息的情况下,则根据用户指定的参数信息来确定对应的结构参数信息和材质配置信息;在生成请求中未包含用户指定的参数信息的情况下,则随机选取对应的结构参数信息和材质配置信息。可以理解的是,用户可能对目标建筑没有参数要求,此时则随机选取所有的结构参数信息和材质配置信息;用户也可能对目标建筑的所有参数均有要求,此时则直接按照用户的指定参数信息确定所有的结构参数信息和材质配置信息;用户还可能对目标建筑的部分参数有要求,此时则按照用户的指定参数信息确定部分的结构参数信息和材质配置信息,而其他结构参数信息和材质配置信息则随机选取。通过这种方式,不仅可以根据玩家的要求生成目标建筑,而且在用户对参数没有要求的情况下可以生成多样化的随机建筑。
请结合图3,图3是图2中步骤S113一实施例的流程示意图。在一实施例中,上述步骤S113具体可以包括:
步骤S1131:在预设网格区域上进行闭环自避游走,随机生成一随机多边形,得到所述多边形参数。
请结合图4,图4是本申请生成的随机多边形一实施例的示意图。本申请的体素建筑的生成方法所采用的多边形为直角多边形,边的长度均为整数,图4左边为一个随机生成的直角多边形,以及各边长。本申请的随机多边形是通过在n*m的网格上(例如图4中m和n均为6)遍历所有闭环,随机自避游走产生的。随机游走(Random walk):是一种数学统计模型,它是一连串的轨迹所组成,其中每一次都是随机的;而随机自避游走是一种格点上的随机游走,但是不会多次访问同一点,闭环表示游走的起点和终点为同一点(如图4右边所示)。产生的随机多边形由多边形的顶点坐标表示[(x0,y0),(x1,y1)…(xn,yn)],由于得到的多边形大小最大为n*m,而在实际生成过程中,会将得到的随机多边形以特定的系数(ax,ay)进行放大,得到最终结果。比如要生成一个大小为12*18的多边形,算法会先随机选取一个闭环自避游走产生的随机多边形,若随机多边形的大小为5*5,那么在x和y方向上的放大系数为(2.4,3.6)。
步骤S1132:从可选垂直结构中,随机选取一垂直结构作为目标垂直结构,得到所述垂直结构参数。
请结合图5,图5是本申请垂直结构一实施例的示意图。在一实施方式中,本申请生成的目标建筑在垂直方向上共有三种可选垂直结构,如图5所示,图5从左至右分别为单层、双层和阁楼结构,生成目标建筑时可以在三种可选垂直结构中随机选取一种。
步骤S1133:从可选屋顶结构中,随机选取一屋顶结构作为目标屋顶结构,得到所述屋顶结构参数。
请结合图6,图6是本申请屋顶结构一实施例的示意图。在一实施方式中,本申请生成的目标建筑的屋顶结构共有四种,如图6所示,图6左侧的编号1至4分别为四坡顶、四坡平顶、三角顶和三角平顶,而图6右侧的编号1至4分别为对应的四种屋顶的体素建筑在游戏内的显示效果,生成目标建筑时可以在四种可选屋顶结构中随机选取一种。
步骤S1134:在所述随机多边形的外围确定外饰区域,并从预设外饰数据库中选择大小合适的外饰类型作为目标外饰,得到所述外饰配置参数。
体素建筑外饰和体素建筑一样,也是由Block_ID矩阵和Block_data矩阵表示,随机的外饰配置需要依赖步骤S1131中产生的随机多边形。请结合图7,图7是本申请外饰配置一实施例的示意图,在n*m大小的区域中随机生成多边形后,可以在n*m矩形框以内和随机多边形以外的区域(如图7所示的外饰位置),在预设外饰数据库中选择大小合适(长和宽都小于等于外饰空间)的外饰,得到外饰配置参数。可以理解的是,在得到合适的外饰后,将外饰的Block_ID矩阵和Block_data矩阵分别插入到建筑主体的Block_ID矩阵和Block_data矩阵中,便实现了目标建筑的外饰配置。
步骤S1135:从预设材质映射表中随机生成一套目标材质映射表,得到所述材质配置参数。
步骤S1136:从预设门窗映射表中随机生成一套目标门窗映射表,得到所述门窗配置参数。
随机的材质配置是用随机生成的材质映射表实现的。材质映射表是将建筑结构ID(即Structure_ID,为整数。用来表示不同的建筑结构,如屋顶,屋檐,地基等等)映射到建材方块ID(Block_ID)的关系映射表,是一对n的关系(n>=1)。在一实施例中,预设材质映射表的结构可以表示如下:
{'Structure_ID_0':[Block_ID_a,Block_ID_b,Block_ID_c],
'Structure_ID_1':[Block_ID_d,Block_ID_e],
'Structure_ID2':[Block_ID_f],
…
'Structure_ID_n':[Block_ID_x,Block_ID_y,Block_ID_z]}
可以理解的是,每个建筑结构ID可以被映射到多种建材方块ID,生成建筑时,对于每一个建筑结构ID,会在对应的建材方块ID列表中随机选择一个建材方块ID进行映射,随机得到一套目标材质映射表,目标材质映射表的结构可以表示如下:
{'Structure_ID_0':Block_ID_b,
'Structure_ID_1':Block_ID_e,
'Structure_ID_2':Block_ID_f,
…
'Structure_ID_n':Block_ID_z}
于是,步骤S1135的过程将建筑结构ID与建材方块ID之间,从一对多的关系,确定为一对一的关系)。可以理解的是,随机的门窗配置的原理和随机的材质配置一致。
请结合图8,图8是本申请材质映射一实施例的示意图。在一实施方式中,如图8所示,图8从左至右分别展示了中世纪风、地中海风、唐风和日式风四种风格下的随机映射的显示结果,可以发现,对于同一种建筑结构,根据随机生成的目标材质映射表不同,产生的建筑外形也有显著差别。
在一实施例中,各个结构参数和材质配置的可取值数量如下表:
参数 | 可取值数 |
直角多边形 | ~1000 |
垂直结构 | 3 |
屋顶结构 | 4 |
外饰 | ~10-100 |
材质和门窗配置组合 | ~1000-100000 |
如上表所示,以每种参数的最小可取数计算,本申请的体素建筑的生成方法可以产生的不同目标建筑的数量可以估算为:1000*3*4*10*1000=1200000000,即可以生成的不同目标建筑的数量大约在十亿量级。因此可以保证生成的目标建筑的多样性,即使多次采用本申请的体素建筑的生成方法随机生成的目标建筑,得到的结果也不重复。
请结合图9,图9是图1中步骤S12一实施例的流程示意图。在一实施例中,上述步骤S12具体可以包括:
步骤S121:根据所述结构参数信息,采用无向图对所述目标建筑进行表示,得到建筑结构图。
具体地,请结合图10,图10是图9中步骤S121一实施例的流程示意图。上述步骤S121具体包括:
步骤S1211:对于某个建筑结构,根据该建筑结构对应的多边形参数和结构参数,得到该建筑结构的所有结构顶点以及每个结构顶点对应的起始点。
步骤S1212:根据该建筑结构对应的随机多边形的所有顶点和所有结构顶点,构成对该建筑结构进行表示的无向图,作为该建筑结构对应的建筑结构图;其中,所述无向图的节点包括随机多边形的所有顶点和所有结构顶点,节点的属性为点的坐标,所述无向图的边由两个相连的顶点构成。
具体地,以屋顶结构为例,在随机多边形P:[(x0,y0),(x1,y1)…(xn,yn)]生成后,可以采用2D多边形骨架提取算法,得到目标建筑的屋顶顶点坐标R:[(x0,y0),(x1,y1)…(xr,yr)],每个顶点对应了多个起始点S:[(x0,y0),(x1,y1)…(xs,ys)],起始点S来自于随机多边形的顶点集P或垂直骨架的顶点集R。
建筑结构图可以用无向图表示,图的节点(vertex)包括随机多边形的顶点P以及屋顶顶点R,节点的属性为该点的坐标(x,y),图的边(edge)由两个相连的顶点构成,包括多边形的边,以及屋顶顶点和起始点形成的边。如图11所示,图11是本申请生成建筑结构图一实施例的示意图,在图11上部分中,建筑结构图将多边形分割成了4个屋顶区域(①-④),多边形的每条边都对应一个区域,这是四坡顶的结构基础;而三角顶则是在四坡顶的图结构基础上,将由三条边构成的区域(①和③)的屋顶顶点R平移到多边形的边上,使得该顶点的坐标(xr,yr)与多边形的边[(xp0,yp0),(xp1,yp1)]在一条直线上(使xr=xp0或yr=yp0),形成图11下部分所描述的图结构。
步骤S122:根据所述建筑结构图,构建所述目标建筑的三维建筑结构矩阵。
具体地,请结合图12,图12是图9中步骤S122一实施例的流程示意图。上述步骤S122具体包括:
步骤S1221:根据所述建筑结构图,得到初始化的二维矩阵。
步骤S1222:计算所述二维矩阵中每个点的高度,并根据对应建筑结构的基础高度值,得到二维矩阵中每个点在三维矩阵中的高度。
步骤S1223:根据所述初始化的二维矩阵和所述二维矩阵中每个点在三维矩阵中的高度,得到所述目标建筑的三维建筑结构矩阵。
由于建筑结构图中划分有各建造区域,对于给定长和宽(l和w)的建造区域,建筑结构矩阵先被初始化为大小为(w,l)的二维矩阵。请结合图13,图13是本申请二维矩阵点的高度的示意图,根据图11上部分的建筑结构图,可以先确定二维矩阵中每一个点的高度,高度等于点到边(此边为该点所属的区域的边)的距离,计算公式为:|xi-xw|+|yi-yw|,如图13中a部分所示,而b部分为四坡顶(左)和三角顶(右)的点的高度结算结果示意图。
在计算得到二维矩阵中每一个点的高度后,建筑三维矩阵的高度(h)为二维矩阵中的最大值(hmax)加上建筑围墙的高度(hwall,例如可以固定设置为5),即h=hmax+hwall。由此,建筑结构矩阵Structure_ID和状态信息矩阵被初始化为大小为w,l,h,取值均为0的矩阵。建筑结构矩阵中屋顶和屋檐所处的高度为上述二维矩阵中对应的点的高度。
请结合图14,图14是本申请三维建筑结构矩阵一实施例的示意图。在得到二维矩阵中对应的点的坐标以及高度后,则可以确定对应的建筑结构ID,于是,可以将各建筑结构的建筑结构ID填充至相应的位置,便形成了目标建筑的三维建筑结构矩阵,图14示出了主要建筑结构ID(屋顶,屋檐,围墙,柱子,围栏和地基)以不同颜色显示于相应的位置。
步骤S123:根据每个方块在所述目标建筑中的位置,生成所述目标建筑的所有方块的状态信息矩阵。
部分建筑结构的材料(比如屋顶)具有朝向的概念,这部分信息被记录在状态信息矩阵Block_dataw*h*l中。在游戏中,Block_data通常取0-3中的一个整数来描述方块上下左右四个朝向。所生成的目标建筑的屋顶的朝向都是外向的,对于矩形而言,其四坡顶的朝向如图15所示,其中左侧的①-④区域分别表示四坡顶的各个坡的朝向(下、右,上,左),右侧是游戏内同一个屋顶方块的四个朝向示意图。
步骤S124:通过所述材质配置信息,将所述目标建筑的三维建筑结构矩阵映射成所述目标建筑的所有方块的元素识别信息矩阵。
在得到三维建筑结构矩阵Structure_IDw*h*l后,通过上述随机生成的目标材质映射表,可以将Structure_IDw*h*l映射成元素识别信息矩阵Block_IDw*h*l。
进一步地,上述步骤S13可以包括:将所述元素识别信息矩阵和所述状态信息矩阵,经过序列化得到终端可识别的二进制文件,以通过终端渲染得到所述目标建筑。
可以理解的是,在得到元素识别信息矩阵Block_IDw*h*l和状态信息矩阵Block_dataw*h*l后,需要经过序列化,得到游戏客户端可识别的二进制文件,便可在游戏中渲染得到目标建筑。
在一应用场景中,上述的体素建筑的生成方法能根据玩家的要求实时返回多样化的随机建筑,将原本需要几小时才能完成的建筑,在几百毫秒内完成,建造速度提高了上万倍;这一应用能够显著降低3D创作门槛,提高普通新手玩家创造建筑的热情。本申请的体素建筑的生成方法解决了以下问题:1)建筑结构的合理性,利用本申请的体素建筑的生成方法生成的建筑结构合理,而且不会出现部分结构缺失等问题;2)建筑结构的多样性,本申请的体素建筑的生成方法定义了十亿量级的不同建筑,重复度低;3)生成过程的可控性,建筑的参数可以全部随机、部分随机或全部由玩家指定,可控性极高,这同时赋予了本申请的体素建筑的生成方法很高的可扩展性,对于新加入的材质,通过修改预设材质映射表即可以产生新的建筑;4)生成过程的实时性,本申请的体素建筑的生成方法对于一般大小的建筑(大小为20-30的矩阵),全链路生成耗时在200毫秒以内。
请参阅图16,图16是本申请体素建筑的生成模型一实施例的框架示意图。体素建筑的生成模型16包括:随机参数生成模块161,用于在结构参数和材质配置的取值范围内,通过随机选取或用户指定来确定结构参数信息和材质配置信息;矩阵构建模块162,用于根据所述结构参数信息和所述材质配置信息生成目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵。
因此,利用体素建筑的生成模型16,在结构参数和材质配置的取值范围内,通过随机参数生成模块161随机选取或用户指定来确定结构参数信息和材质配置信息,然后由矩阵构建模块162根据所述结构参数信息和所述材质配置信息生成目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵,从而可以基于元素识别信息矩阵和状态信息矩阵,生成目标建筑,实现快速生成满足玩家要求的体素建筑,能够显著降低体素建筑创作门槛,提高普通新手玩家创造体素建筑的热情。
请参阅图17,图17是本申请体素建筑的生成模型另一实施例的框架示意图。本实施例中,上述随机参数生成模块161包括:随机多边形生成器1611,用于在预设网格区域上进行闭环自避游走,随机生成一随机多边形,得到所述多边形参数;随机垂直结构生成器1612,用于从可选垂直结构中,随机选取一垂直结构作为目标垂直结构,得到所述垂直结构参数;随机屋顶结构生成器1613,用于从可选屋顶结构中,随机选取一屋顶结构作为目标屋顶结构,得到所述屋顶结构参数;随机外饰配置生成器1614,用于在所述随机多边形的外围确定外饰区域,并从预设外饰数据库中选择大小合适的外饰类型作为目标外饰,得到所述外饰配置参数;随机材质配置生成器1615,用于从预设材质映射表中随机生成一套目标材质映射表,得到所述材质配置参数;随机门窗配置生成器1616,用于从预设门窗映射表中随机生成一套目标门窗映射表,得到所述门窗配置参数。上述矩阵构建模块162包括:建筑的图表示和加工子模块1621,用于根据所述结构参数信息,采用无向图对所述目标建筑进行表示,得到建筑结构图;矩阵填充子模块1622,用于根据所述建筑结构图,构建所述目标建筑的三维建筑结构矩阵;朝向适应子模块1623,用于根据每个方块在所述目标建筑中的位置,生成所述目标建筑的所有方块的状态信息矩阵;材质映射子模块1624,用于通过所述材质配置信息,将所述目标建筑的三维建筑结构矩阵映射成所述目标建筑的所有方块的元素识别信息矩阵;格式转换子模块1625,用于将所述元素识别信息矩阵和所述状态信息矩阵,经过序列化得到终端可识别的二进制文件,以通过终端渲染得到所述目标建筑。
在一些实施例中,建筑的图表示和加工子模块1621具体用于:对于某个建筑结构,根据该建筑结构对应的多边形参数和结构参数,得到该建筑结构的所有结构顶点以及每个结构顶点对应的起始点;根据该建筑结构对应的随机多边形的所有顶点和所有结构顶点,构成对该建筑结构进行表示的无向图,作为该建筑结构对应的建筑结构图;其中,所述无向图的节点包括随机多边形的所有顶点和所有结构顶点,节点的属性为点的坐标,所述无向图的边由两个相连的顶点构成。
在一些实施例中,矩阵填充子模块1622具体用于:根据所述建筑结构图,得到初始化的二维矩阵;计算所述二维矩阵中每个点的高度,并根据对应建筑结构的基础高度值,得到二维矩阵中每个点在三维矩阵中的高度;根据所述初始化的二维矩阵和所述二维矩阵中每个点在三维矩阵中的高度,得到所述目标建筑的三维建筑结构矩阵。
请参阅图18,图18是本申请体素建筑的生成装置一实施例的框架示意图。体素建筑的生成装置18包括:请求接收模块180,所述请求接收模块180用于接收用户对目标建筑的生成请求;参数生成模块181,所述参数生成模块181用于根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息;矩阵构建模块182,所述矩阵构建模块182用于根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵;建筑生成模块183,所述建筑生成模块183用于基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。
在一些实施例中,参数生成模块181执行根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息的步骤,包括:判断所述生成请求中是否包含用户指定的参数信息;在包含用户指定的参数信息的情况下,根据所述用户指定的参数信息确定对应的结构参数信息和材质配置信息;在未包含用户指定的参数信息的情况下,随机选取对应的结构参数信息和材质配置信息。
在一些实施例中,参数生成模块181执行随机选取对应的结构参数信息和材质配置信息,具体包括:在预设网格区域上进行闭环自避游走,随机生成一随机多边形,得到所述多边形参数;从可选垂直结构中,随机选取一垂直结构作为目标垂直结构,得到所述垂直结构参数;从可选屋顶结构中,随机选取一屋顶结构作为目标屋顶结构,得到所述屋顶结构参数;在所述随机多边形的外围确定外饰区域,并从预设外饰数据库中选择大小合适的外饰类型作为目标外饰,得到所述外饰配置参数;从预设材质映射表中随机生成一套目标材质映射表,得到所述材质配置参数;从预设门窗映射表中随机生成一套目标门窗映射表,得到所述门窗配置参数。
在一些实施例中,矩阵构建模块182执行根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵的步骤,包括:根据所述结构参数信息,采用无向图对所述目标建筑进行表示,得到建筑结构图;根据所述建筑结构图,构建所述目标建筑的三维建筑结构矩阵;根据每个方块在所述目标建筑中的位置,生成所述目标建筑的所有方块的状态信息矩阵;通过所述材质配置信息,将所述目标建筑的三维建筑结构矩阵映射成所述目标建筑的所有方块的元素识别信息矩阵。
在一些实施例中,矩阵构建模块182执行根据所述结构参数信息,采用无向图对所述目标建筑进行表示,得到建筑结构图,具体包括:对于某个建筑结构,根据该建筑结构对应的多边形参数和结构参数,得到该建筑结构的所有结构顶点以及每个结构顶点对应的起始点;根据该建筑结构对应的随机多边形的所有顶点和所有结构顶点,构成对该建筑结构进行表示的无向图,作为该建筑结构对应的建筑结构图;其中,所述无向图的节点包括随机多边形的所有顶点和所有结构顶点,节点的属性为点的坐标,所述无向图的边由两个相连的顶点构成。
在一些实施例中,矩阵构建模块182执行根据所述建筑结构图,构建所述目标建筑的三维建筑结构矩阵,具体包括:根据所述建筑结构图,得到初始化的二维矩阵;计算所述二维矩阵中每个点的高度,并根据对应建筑结构的基础高度值,得到二维矩阵中每个点在三维矩阵中的高度;根据所述初始化的二维矩阵和所述二维矩阵中每个点在三维矩阵中的高度,得到所述目标建筑的三维建筑结构矩阵。
在一些实施例中,建筑生成模块183执行基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑的步骤,包括:将所述元素识别信息矩阵和所述状态信息矩阵,经过序列化得到终端可识别的二进制文件,以通过终端渲染得到所述目标建筑。
请参阅图19,图19是本申请电子设备一实施例的框架示意图。电子设备19包括相互耦接的存储器191和处理器192,处理器192用于执行存储器191中存储的程序指令,以实现上述任意一种体素建筑的生成方法实施例的步骤。在一个具体的实施场景中,电子设备19可以包括但不限于:微型计算机、服务器。
具体而言,处理器192用于控制其自身以及存储器191以实现上述任意一种体素建筑的生成方法实施例的步骤。处理器192还可以称为CPU(Central Processing Unit,中央处理单元)。处理器192可能是一种集成电路芯片,具有信号的处理能力。处理器192还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器192可以由集成电路芯片共同实现。
请参阅图20,图20是本申请计算机可读存储介质一实施例的框架示意图。计算机可读存储介质200存储有能够被处理器运行的程序指令2000,程序指令2000用于实现上述任意一种体素建筑的生成方法实施例的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (12)
1.一种体素建筑的生成方法,其特征在于,所述体素建筑的生成方法包括:
接收用户对目标建筑的生成请求,根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息;
根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵;
基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。
2.根据权利要求1所述的体素建筑的生成方法,其特征在于,所述结构参数信息至少包括多边形参数、垂直结构参数、屋顶结构参数和外饰配置参数;所述材质配置信息至少包括材质配置参数和门窗配置参数。
3.根据权利要求2所述的体素建筑的生成方法,其特征在于,所接收用户对目标建筑的生成请求,根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息,包括:
在接收到用户对所述目标建筑的生成请求时,判断所述生成请求中是否包含用户指定的参数信息;
在包含用户指定的参数信息的情况下,根据所述用户指定的参数信息确定对应的结构参数信息和材质配置信息;
在未包含用户指定的参数信息的情况下,随机选取对应的结构参数信息和材质配置信息。
4.根据权利要求3所述的体素建筑的生成方法,其特征在于,所述随机选取对应的结构参数信息和材质配置信息,包括:
在预设网格区域上进行闭环自避游走,随机生成一随机多边形,得到所述多边形参数;
从可选垂直结构中,随机选取一垂直结构作为目标垂直结构,得到所述垂直结构参数;
从可选屋顶结构中,随机选取一屋顶结构作为目标屋顶结构,得到所述屋顶结构参数;
在所述随机多边形的外围确定外饰区域,并从预设外饰数据库中选择大小合适的外饰类型作为目标外饰,得到所述外饰配置参数;
从预设材质映射表中随机生成一套目标材质映射表,得到所述材质配置参数;
从预设门窗映射表中随机生成一套目标门窗映射表,得到所述门窗配置参数。
5.根据权利要求2所述的体素建筑的生成方法,其特征在于,所述根据所述结构参数信息和材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵,包括:
根据所述结构参数信息,采用无向图对所述目标建筑进行表示,得到建筑结构图;
根据所述建筑结构图,构建所述目标建筑的三维建筑结构矩阵;
根据每个方块在所述目标建筑中的位置,生成所述目标建筑的所有方块的状态信息矩阵;
通过所述材质配置信息,将所述目标建筑的三维建筑结构矩阵映射成所述目标建筑的所有方块的元素识别信息矩阵。
6.根据权利要求5所述的体素建筑的生成方法,其特征在于,所述根据所述结构参数信息,采用无向图对所述目标建筑进行表示,得到建筑结构图,包括:
对于某个建筑结构,根据该建筑结构对应的多边形参数和结构参数,得到该建筑结构的所有结构顶点以及每个结构顶点对应的起始点;
根据该建筑结构对应的随机多边形的所有顶点和所有结构顶点,构成对该建筑结构进行表示的无向图,作为该建筑结构对应的建筑结构图;其中,所述无向图的节点包括随机多边形的所有顶点和所有结构顶点,节点的属性为点的坐标,所述无向图的边由两个相连的顶点构成。
7.根据权利要求6所述的体素建筑的生成方法,其特征在于,所述根据所述建筑结构图,构建所述目标建筑的三维建筑结构矩阵,包括:
根据所述建筑结构图,得到初始化的二维矩阵;
计算所述二维矩阵中每个点的高度,并根据对应建筑结构的基础高度值,得到二维矩阵中每个点在三维矩阵中的高度;
根据所述初始化的二维矩阵和所述二维矩阵中每个点在三维矩阵中的高度,得到所述目标建筑的三维建筑结构矩阵。
8.根据权利要求1所述的体素建筑的生成方法,其特征在于,所述基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑,包括:
将所述元素识别信息矩阵和所述状态信息矩阵,经过序列化得到终端可识别的二进制文件,以通过终端渲染得到所述目标建筑。
9.一种体素建筑的生成模型,其特征在于,所述体素建筑的生成模型包括:
随机参数生成模块,用于在结构参数和材质配置的取值范围内,通过随机选取或用户指定来确定结构参数信息和材质配置信息;
矩阵构建模块,用于根据所述结构参数信息和所述材质配置信息生成目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵。
10.一种体素建筑的生成装置,其特征在于,所述体素建筑的生成装置包括:
请求接收模块,所述请求接收模块用于接收用户对目标建筑的生成请求;
参数生成模块,所述参数生成模块用于根据所述生成请求确定所述目标建筑的结构参数信息和材质配置信息;
矩阵构建模块,所述矩阵构建模块用于根据所述结构参数信息和所述材质配置信息构建所述目标建筑的所有方块的元素识别信息矩阵和状态信息矩阵;
建筑生成模块,所述建筑生成模块用于基于所述元素识别信息矩阵和所述状态信息矩阵,生成所述目标建筑。
11.一种电子设备,其特征在于,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现权利要求1至8任一项所述的体素建筑的生成方法。
12.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现权利要求1至8任一项所述的体素建筑的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110350358.7A CN113018847A (zh) | 2021-03-31 | 2021-03-31 | 体素建筑的生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110350358.7A CN113018847A (zh) | 2021-03-31 | 2021-03-31 | 体素建筑的生成方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113018847A true CN113018847A (zh) | 2021-06-25 |
Family
ID=76453344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110350358.7A Pending CN113018847A (zh) | 2021-03-31 | 2021-03-31 | 体素建筑的生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113018847A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113440859A (zh) * | 2021-07-04 | 2021-09-28 | 王禹豪 | 游戏物品数值生成与检测方法、装置及存储介质 |
CN113838209A (zh) * | 2021-09-09 | 2021-12-24 | 深圳市慧鲤科技有限公司 | 目标环境的信息管理方法及相关增强现实的显示方法 |
CN114119620A (zh) * | 2021-11-25 | 2022-03-01 | 北京理工大学 | 适用于复杂多腔三维模型的骨架线提取方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110102058A (zh) * | 2019-06-10 | 2019-08-09 | 网易(杭州)网络有限公司 | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 |
CN111882632A (zh) * | 2020-07-24 | 2020-11-03 | 上海米哈游天命科技有限公司 | 一种地表细节的渲染方法、装置、设备及存储介质 |
-
2021
- 2021-03-31 CN CN202110350358.7A patent/CN113018847A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110102058A (zh) * | 2019-06-10 | 2019-08-09 | 网易(杭州)网络有限公司 | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 |
CN111882632A (zh) * | 2020-07-24 | 2020-11-03 | 上海米哈游天命科技有限公司 | 一种地表细节的渲染方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
刘华等: "语义规则驱动的中国古代建筑造型", 《计算机辅助设计与图形学学报》 * |
索特里斯 A•卡鲁赫罗著: "《太阳能能源工程工艺与系统 第2版 下》", 31 January 2018 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113440859A (zh) * | 2021-07-04 | 2021-09-28 | 王禹豪 | 游戏物品数值生成与检测方法、装置及存储介质 |
CN113838209A (zh) * | 2021-09-09 | 2021-12-24 | 深圳市慧鲤科技有限公司 | 目标环境的信息管理方法及相关增强现实的显示方法 |
CN114119620A (zh) * | 2021-11-25 | 2022-03-01 | 北京理工大学 | 适用于复杂多腔三维模型的骨架线提取方法 |
CN114119620B (zh) * | 2021-11-25 | 2024-05-28 | 北京理工大学 | 适用于复杂多腔三维模型的骨架线提取方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113018847A (zh) | 体素建筑的生成方法、装置、电子设备及存储介质 | |
US7233341B1 (en) | Spacing objects within a constraint | |
CN112767522B (zh) | 虚拟对象风动画的渲染方法及装置、存储介质、电子装置 | |
CN108961404B (zh) | 一种积木式构建不规则模型的方法和系统 | |
CN111714895B (zh) | 游戏数据的处理方法及装置、存储介质、计算机设备 | |
CN101251932A (zh) | 基于物理的植物叶子模拟方法 | |
KR20010009585A (ko) | 미장로봇을 위한 경로계획 생성방법 | |
CN112509105B (zh) | 一种纹理连续的建筑物表面铺贴方法及装置 | |
JP2915363B2 (ja) | 空間探索システム | |
US9208611B2 (en) | System and method for displaying 3-dimension map using texture mapping | |
CN113744403A (zh) | 建筑物的三维模型的生成方法及系统 | |
CN115115800A (zh) | 一种bim模型简化方法及装置 | |
Williams et al. | A time-line approach for the generation of simulated settlements | |
JP6565494B2 (ja) | 立体物造形用データ削減装置 | |
KR20080018405A (ko) | 3차원 지형의 제작을 제공하는 지형 제작 프로그램을기록한 컴퓨터 판독가능 기록매체 | |
Brol et al. | Procedural Generation of Virtual Cities | |
Fletcher et al. | Challenges and perspectives of procedural modelling and effects | |
US20010013867A1 (en) | Object search method and object search system | |
CN114781030B (zh) | 基于幕墙边际线的幕墙精细化模型生成方法及系统 | |
CN117974394B (zh) | 一种基于虚拟现实的陵园数字化祭扫智能服务系统 | |
JP4027130B2 (ja) | 図形整形プログラム | |
Day et al. | Combining polygonal and subdivision surface approaches to modelling and rendering of urban environments | |
CN114445281A (zh) | 模型缩放方法以及存储介质、电子设备、计算机程序产品 | |
Pérez et al. | Visualization of large terrain using non-restricted quadtree triangulations | |
CN115364480A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210625 |