CN111589155A - 一种建筑物构件编辑方法、装置、存储介质和电子设备 - Google Patents
一种建筑物构件编辑方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN111589155A CN111589155A CN202010516502.5A CN202010516502A CN111589155A CN 111589155 A CN111589155 A CN 111589155A CN 202010516502 A CN202010516502 A CN 202010516502A CN 111589155 A CN111589155 A CN 111589155A
- Authority
- CN
- China
- Prior art keywords
- component
- grid
- building
- roof
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/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/20—Finite element generation, e.g. wire-frame surface description, tesselation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例公开了一种建筑物构件编辑方法、装置、存储介质和电子设备,所述方法包括:确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。该方案可以提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种建筑物构件编辑方法、装置、存储介质和电子设备。
背景技术
为了提升游戏的趣味性,许多游戏会包括家园系统的玩法,玩家可以在游戏中建造属于自己的虚拟房屋、虚拟花园等,还可以对虚拟房屋进行布置、装修等等,使得玩家能够体验到自己的“家园”从无到有、逐渐繁华的过程。现有游戏中室内建造的玩法,是通过更换贴图改变虚拟对象的外观,但是通过这种方法调整后的虚拟对象不够真实。
发明内容
本申请实施例提供一种建筑物构件编辑方法、装置、存储介质和电子设备,该方案可以提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
本申请实施例提供一种建筑物构件编辑方法,包括:
确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域;
将所述建筑物构件区域划分为多个网格区域;
确定目标构件样式对应的元素标识集合,其中,所述元素标识集合包括多个元素标识,每个所述元素标识对应一个网格区域,所述多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识;
基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素;
基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素;
基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
相应的,本申请实施例还提供一种建筑物构件编辑装置,包括:
确定模块,用于确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域;
划分模块,用于将所述建筑物构件区域划分为多个网格区域;
集合确定模块,用于确定目标构件样式对应的元素标识集合,其中,所述元素标识集合包括多个元素标识,每个所述元素标识对应一个网格区域,所述多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识;
第一编辑模块,用于基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素;
第二编辑模块,用于基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素;
调整模块,用于基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
可选的,在一些实施例中,所述第一编辑模块可以包括标识确定子模块、区域确定子模块和编辑子模块,如下:
标识确定子模块,用于从所述构件元素集合的多个所述元素标识中,确定第一构件元素样式下第一构件元素的第一元素标识;
区域确定子模块,用于基于所述第一元素标识在所述元素标识集合中的集合索引,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域;
编辑子模块,用于在所述第一网格区域上编辑所述第一构件元素。
则此时,所述区域确定子模块具体可以用于确定每个所述第一元素标识在所述元素标识集合中的集合索引,基于所述集合索引与网格区域所在位置之间的对应关系,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域。
则此时,所述编辑子模块具体可以用于确定所述第一元素标识所属的贴图样式,在所述第一元素标识对应的第一网格区域上,编辑所述贴图样式对应的第一构件元素。
则此时,所述第二编辑模块具体可以用于基于所述第二构件元素对应的区域位置信息,从所述多个网格区域中确定所述区域位置信息对应的第二网格区域,当所述第二网格区域没有与所述第一构件元素所处的网格区域重叠时,在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
则此时,所述第二编辑模块还可以用于当所述第二网格区域与所述第一构件元素所处的网格区域重叠时,删除重叠部分网格区域上的第一构件元素,并在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
则此时,所述调整模块具体可以用于将编辑后的构件元素所对应的元素标识写入网格数据中,基于所述网格数据、以及所述第二构件元素对应的碰撞属性,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
此外,本申请实施例还提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例提供的任一种建筑物构件编辑方法中的步骤。
此外,本申请实施例还提供一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本申请实施例提供的任一种建筑物构件编辑方法中的步骤。
本申请实施例可以确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。该方案可以提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的建筑物构件编辑系统的场景示意图;
图2是本申请实施例提供的建筑物构件编辑方法的第一流程图;
图3是本申请实施例提供的建筑物构件编辑方法的第二流程图;
图4是本申请实施例提供的单块屋顶示意图;
图5是本申请实施例提供的整体屋顶示意图;
图6是本申请实施例提供的屋顶摆放流程图;
图7是本申请实施例提供的整体屋顶移除流程图;
图8是本申请实施例提供的摆放单块屋顶后的屋顶示意图;
图9是本申请实施例提供的摆放整体屋顶后的屋顶示意图;
图10是本申请实施例提供的原始碰撞示意图;
图11是本申请实施例提供的编辑后的屋顶碰撞示意图;
图12是本申请实施例提供的网格数据示意图;
图13是本申请实施例提供的坡屋顶贴图和平面矩形碰撞示意图;
图14是本申请实施例提供的建筑物构件编辑装置的第二结构示意图;
图15是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供一种建筑物构件编辑方法、装置、存储介质和电子设备。具体地,本申请实施例的建筑物构件编辑方法可以由电子设备执行,其中,该电子设备可以为终端或者服务器等设备,该终端可以为手机、平板电脑、笔记本电脑、智能电视、穿戴式智能设备、个人计算机(PC,Personal Computer)等设备。其中,终端可以包括客户端,该客户端可以是视频客户端或浏览器客户端等,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
其中,碰撞是为了提升游戏的真实性,保证游戏内的物体不互相穿透,而为游戏对象设置的属性,设置了碰撞属性的游戏对象之间可以模拟自然物理运动。比如,可以对游戏对象设置相应的碰撞属性,使得游戏人物不能穿墙、人不能穿过桌子椅子等;还可以对屏幕边界设置相应的碰撞属性,限制游戏对象不能走出手机屏幕之外等等。
其中,贴图可以用于描述游戏对象所对应模型结构的外观,贴图本身是平面图,当其贴在游戏对象的模型结构上时,可以赋予游戏对象可视化效果,同时,贴图还可以反映游戏对象表面的材质、纹理等等。比如,若游戏对象为屋顶,可以为屋顶设置特定的贴图,以反映屋顶的材质、花纹等等。
其中,网格是为了保证游戏对象和碰撞属性相匹配而对游戏对象进行划分所得到的多个区域,由于游戏对象被划分为多个网格,就可以针对每个网格进行贴图并编辑碰撞属性,使得碰撞属性与游戏对象的外观相匹配。比如,若游戏对象为屋顶,那么可以将屋顶划分为多个网格,针对每个网格进行贴图,并为每个网格设置符合所贴图的碰撞属性,使得屋顶整体的碰撞属性与屋顶外观相匹配。
例如,参见图1,以该建筑物构件编辑方法由电子设备执行为例,该电子设备可以确定虚拟建筑物中需要编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、以及第二构件元素样式下第二构件元素的第二元素标识,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本申请实施例提供了一种建筑物构件编辑方法,该方法可以由终端或服务器执行,也可以由终端和服务器共同执行;本申请实施例以建筑物构件编辑方法由服务器执行为例来进行说明,如图2所示,该建筑物构件编辑方法的具体流程可以如下:
201、确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域。
其中,本申请的建筑物构件编辑方法可以应用在游戏领域,在游戏中会包括室内建造的游戏玩法,也即玩家可以在游戏中建造属于自己的虚拟房屋、虚拟花园等,还可以对虚拟房屋进行布置、装修等等,使得玩家能够体验到自己的“家园”从无到有、逐渐繁华的过程。其中,游戏中玩家所建造的虚拟房屋就可以称为虚拟建筑物。
其中,为了提升游戏的趣味性,玩家还可以对虚拟建筑物进行装饰、升级等等,比如,玩家可以在虚拟房屋中铺设地毯、安置家具,或者在对房屋升级时更新屋顶,等等。其中,游戏中的屋顶、地毯、家具等都可以称为建筑物构件。
其中,在游戏的虚拟建筑物中,每个建筑物构件都会对应到具体的建筑物构件区域,比如,当建筑物构件是虚拟的屋顶时,屋顶所处的区域就可以称为建筑物构件区域;当建筑物构件是虚拟的家具时,放置家具的区域就可以称为建筑物构件区域,等等。
在实际应用中,比如,如图4所示,若虚拟建筑物指代游戏中的虚拟房屋,建筑物构件指代游戏中虚拟的屋顶,在需要编辑屋顶时,就可以将虚拟房屋中待编辑的屋顶所处的区域确定为建筑物构件区域,也即图4中加粗线条所框选的区域。
202、将建筑物构件区域划分为多个网格区域。
其中,在游戏中用户需要更换建筑物构件时,通常会将建筑物构件区域作为一个整体,直接替换整体建筑物构件区域上的构件贴图或者构件模型,但是利用这种方法更换后的建筑物构件,建筑物构件区域上原有的碰撞属性并没有被改变,改变的只是建筑物构件区域上建筑物构件的外观,就会产生虚拟建筑物中建筑物构件的外观与碰撞属性不匹配的问题。比如,游戏中原始的屋顶是平屋顶,屋顶所在建筑物构件区域对应的碰撞属性是平面矩形碰撞,若玩家想将平屋顶换成坡屋顶,此时仅仅会将建筑物构件区域上屋顶的贴图,从平屋顶的贴图换成坡屋顶的贴图,而不改变碰撞属性,也即此时的建筑物构件区域仍然对应平面矩形碰撞。如图13所示,图13中区域1代表坡屋顶贴图所指示的区域,区域2代表平面矩形碰撞所指示的区域,此时的坡屋顶贴图与平面矩形碰撞并不能相匹配,那么玩家在玩游戏的过程中,根据屋顶外观会判定此时的屋顶是坡屋顶,也即玩家会根据生活经验认为区域1是可以利用的区域,但是当玩家需要利用区域1时,会由于区域2平面矩形碰撞的阻隔无法实现区域1的利用,这样会大大降低游戏的真实性。
因此,本申请实施例可以将建筑物构件区域进行网格划分,划分为多个网格区域,这样就可以在需要改变建筑物构件时,在每个网格区域上编辑相应的构件元素,并且根据网格区域上所编辑的构件元素,对每个网格区域对应的碰撞属性进行编辑,将其编辑为适合该网格区域上所编辑构件元素的碰撞属性,从而使得虚拟建筑物中建筑物构件与碰撞属性相匹配。比如,如图4所示,可以按照预设的网格尺寸,将需要编辑屋顶的建筑物构件区域划分为多个网格区域,以便针对网格区域进行屋顶编辑操作,进而实现整体建筑物构件区域的屋顶编辑操作。
203、确定目标构件样式对应的元素标识集合。
其中,目标构件样式是指游戏中建筑物构件整体的样式,比如,屋顶可以分为单块屋顶和整体屋顶两种类型,如图4所示,图中的屋顶都是由单块屋顶构成,这种屋顶的构成方式可以称为一种屋顶的构件样式;又比如,如图9所示,图中的屋顶是由单块屋顶和整体屋顶共同构成的,这种屋顶的构成方式也可以称为一种屋顶的构件样式,等等。
其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,比如,元素标识集合中可以包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,并且元素标识集合中的每个元素标识都能对应到具体的网格区域。
其中,构件元素是指构成建筑物构件所需的多个元素,比如,当建筑物构件指代屋顶时,构件元素可以指一个网格区域中所编辑的屋顶,这样多个构件元素可以一起构成整体的屋顶。
其中,构件元素可以属于多种构件元素样式,比如,对于游戏中的屋顶而言,可以分为两种构件元素样式,一种是如图4所示的单块屋顶这种样式,这种构件元素样式的构件元素可以组成平面的屋顶,与这种屋顶相匹配的碰撞属性是平面碰撞,可以将单块屋顶这种样式称为第一构件元素样式;另一种是如图5所示的整体屋顶这种样式,这种构件元素样式的构件元素可以组成立体的屋顶,此时平面碰撞这种碰撞属性不再与整体屋顶相匹配,可以将整体屋顶这种样式称为第二构件元素样式。
其中,单块屋顶是一种构件元素样式,多个单块屋顶样式的屋顶构件元素可以组成平面的屋顶构件。比如,如图4所示,图中的屋顶是由多个单块屋顶样式的屋顶构件元素所组成,每个屋顶构件元素的长宽都是0.5米。其中,单块屋顶这种构件元素样式所对应的屋顶构件元素的贴图未必相同,比如,如图12所示,图中包括单块屋顶A和单块屋顶B,这说明图中的单块屋顶A和单块屋顶B都属于单块屋顶这种构件元素样式,但是由于他们所对应的贴图不同,所以属于不同的贴图样式。但是不同贴图样式的屋顶构件元素所对应的碰撞属性相同,也就是说,当需要将单块屋顶A替换为单块屋顶B时,可以仅仅修改屋顶构件元素的贴图,而无需改变当前的碰撞属性。
其中,整体屋顶是一种构件元素样式,整体屋顶可以根据其屋顶模型的不同分为多种,由于每种整体屋顶都对应不同的屋顶模型,因此每种整体屋顶都对应着特定的碰撞属性,不同的整体屋顶之间屋顶模型不同,对应的碰撞属性也不同。如图5所示,整体屋顶由于其屋顶模型的不同可以分为多种形状,拱形屋顶、镂空屋顶等等。又如图12所示,图中包括整体屋顶C和整体屋顶D,这说明图中的整体屋顶C和整体屋顶D都属于整体屋顶这种构件元素样式,但是由于他们所对应的屋顶模型不同,所以属于不同类型的整体屋顶,也就是说,当需要将整体屋顶C替换为整体屋顶D时,不仅需要替换屋顶模型,还需要改变当前的碰撞属性。
其中,元素标识用于表征网格区域上所编辑的构件元素,同一种样式的构件元素所对应的元素标识相同,不同样式的构件元素对应的元素标识不同,比如,单块屋顶对应的元素标识与整体屋顶对应的元素标识不同,相同贴图样式的单块屋顶对应的元素标识相同,不同贴图样式的单块屋顶对应的元素标识不同,不同屋顶模型的整体屋顶对应的元素标识也不同。
在实际应用中,可以确定目标构件样式对应的元素标识集合。比如,由于每种屋顶整体都对应一种构件样式,因此,不同的构件样式所对应的元素标识集合是不同的。全部由单块屋顶构成的屋顶的构件样式,其对应的元素标识集合中就只包括单块屋顶对应的元素标识;由单块屋顶和整体屋顶共同构成的屋顶的构件样式,其对应的元素标识集合中不仅包括单块屋顶对应的元素标识,还包括整体屋顶对应的元素标识。其中,元素标识集合中包括多个元素标识,元素标识的数量与划分出的网格区域的数量是一致的,比如,若划分出了100个网格区域,那么元素标识集合中就包括100个元素标识。
并且,元素标识集合中的元素标识是对应着网格区域的分布进行排列的,也就是说,元素标识集合中元素标识的集合索引与网格区域的位置存在着对应关系,比如,集合索引为1的元素标识就对应着位于位置(1,1)的网格区域,集合索引为2的元素标识就对应着位于位置(1,2)的网格区域…当然,这种集合索引与网格区域位置之间的对应关系可以根据实际情况进行调整。其中,集合索引指代元素在集合中所对应的索引,如集合中位于第一位的元素,其集合索引就是1,集合中位于第二位的元素,其集合索引就是2。
比如,以图4为例,图4中是由100个同种单块屋顶构成的屋顶,若预设该种单块屋顶的元素标识为屋顶ID11,那么这种构件样式的屋顶所对应的元素标识集合就可以表示为[屋顶ID11,屋顶ID11…屋顶ID11],该元素标识集合中包括100个元素标识。
又比如,对于由100个单块屋顶构成的屋顶,其中,以屋顶对应的建筑物构件区域的中心线为准,位于中心线一侧的是第一种贴图样式的单块屋顶,这种单块屋顶的元素标识可以表示为屋顶ID11,位于中心线另一侧的是第二种贴图样式的单块屋顶,这种单块屋顶的元素标识可以表示为屋顶ID12,那么这种构件样式的屋顶所对应的元素标识集合就可以表示为[屋顶ID11,屋顶ID11…屋顶ID11,屋顶ID12,屋顶ID12…屋顶ID12],该元素标识集合中前50个元素标识都是屋顶ID11,后50个元素标识都是屋顶ID12。
又比如,对于由同种单块屋顶和同种整体屋顶共同构成的屋顶,若预设该种单块屋顶的元素标识为屋顶ID11,该种整体屋顶的元素标识为屋顶ID21,那么这种构件样式的屋顶所对应的元素标识集合就可以表示为[屋顶ID11,屋顶ID11…屋顶ID21,屋顶ID21…屋顶ID11],该元素标识集合中包括100个元素标识,其中元素标识的集合索引与网格区域的位置相对应,一部分元素标识是单块屋顶的元素标识,另一部分元素标识是整体屋顶的元素标识。
又比如,对于由多种单块屋顶和多种整体屋顶共同构成的屋顶,若预设多种单块屋顶的元素标识分别为屋顶ID11、屋顶ID12…屋顶ID1n,多种整体屋顶的元素标识分别为屋顶ID21、屋顶ID22…屋顶ID2n,那么这种构件样式的屋顶所对应的元素标识集合中包括100个元素标识,其中元素标识的集合索引与网格区域的位置相对应,一部分元素标识是单块屋顶的元素标识,另一部分元素标识是整体屋顶的元素标识。
204、基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素。
在实际应用中,比如,可以遍历元素标识集合,由于元素标识集合中的元素标识与网格区域的位置是一一对应的,因此可以根据元素标识集合,确定出应当编辑第一构件元素样式下第一构件元素的网格区域,然后将第一构件元素编辑到相应的网格区域上。
在一实施例中,元素标识集合中元素标识可以通过集合索引,对应到相应的网格区域。具体地,步骤“基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素”,可以包括:
从所述构件元素集合的多个所述元素标识中,确定第一构件元素样式下第一构件元素的第一元素标识;
基于所述第一元素标识在所述元素标识集合中的集合索引,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域;
在所述第一网格区域上编辑所述第一构件元素。
在实际应用中,比如,可以遍历元素标识集合,在多个元素标识中,确定出第一构件元素样式下第一构件元素的第一元素标识,然后根据每个第一元素标识在元素标识集合中的集合索引,确定应当编辑第一构件元素样式下第一构件元素的第一网格区域,并在第一网格区域上编辑第一构件元素。
在一实施例中,具体地,步骤“基于所述第一元素标识在所述元素标识集合中的集合索引,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域”,可以包括:
确定每个所述第一元素标识在所述元素标识集合中的集合索引;
基于所述集合索引与网格区域所在位置之间的对应关系,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域。
在实际应用中,比如,可以获取预先设置的集合索引与网格区域所在位置之间的对应关系,集合索引1的元素标识对应着坐标位置为(1,1)的网格区域,集合索引2的元素标识对应着坐标位置为(1,2)的网格区域…然后确定每个第一元素标识在元素标识集合中对应的集合索引,然后根据集合索引与网格区域所在位置之间的对应关系,从多个网格区域中确定第一元素标识对应的第一网格区域。
在一实施例中,由于单块屋顶可以对应不同的贴图,因此,可以根据元素标识对应的贴图样式进行构件元素的编辑。具体地,步骤“在所述第一网格区域上编辑所述第一构件元素”,可以包括:
确定所述第一元素标识所属的贴图样式;
在所述第一元素标识对应的第一网格区域上,编辑所述贴图样式对应的第一构件元素。
在实际应用中,比如,当第一构件元素样式代表单块屋顶时,单块屋顶可以对应多种贴图样式,不同贴图样式对应的第一元素标识不同,因此,可以根据第一元素标识确定出相应的贴图样式,此时,已经确定出了每个第一元素标识对应的第一网格区域,可以进一步确定该第一网格区域对应的贴图样式,并在该第一网格区域上编辑该贴图样式对应的第一构件元素。
在一实施例中,比如,进入游戏场景后,可以首先遍历元素标识集合,找到元素标识集合中与单块屋顶这种构件元素样式相对应的第一元素标识,并确定每个第一元素标识所对应的第一网格区域,然后在第一网格区域上编辑该第一元素标识对应的第一构件元素。如图4所示,若摆放的全部是单块屋顶,就会得到一个平屋顶;如图8所示,若只在一部分网格区域上摆放了单块屋顶,就会出现一部分镂空的区域,等待摆放整体屋顶。如图12所示,在第一构件元素编辑完成后,可以将所有第一元素标识写入到网格数据中。
205、基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素。
其中,当第二构件元素样式指代整体屋顶这种构件元素样式时,每个整体屋顶都会对应着预设的区域位置信息,该区域位置信息对应着建筑物构建区域中需要编辑整体屋顶的区域,可以用坐标的形式表示区域位置信息。
在实际应用中,比如,当第二构件元素样式指代整体屋顶这种构件元素样式时,由于每个整体屋顶都会对应着预设的区域位置信息,因此,可以直接根据整体屋顶所对应的区域位置信息,在区域位置信息所对应的网格区域上编辑整体屋顶。如图12所示,在整体屋顶编辑完成后,可以将所有整体屋顶对应的第二元素标识写入到网格数据中。
在一实施例中,由于同一个网格区域上只能编辑一种构件元素,因此,当需要编辑第二构件元素的网格区域上已经存在第一构件元素时,需要相应地将第一构件元素删除。具体地,步骤“基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素”,可以包括:
基于所述第二构件元素对应的区域位置信息,从所述多个网格区域中确定所述区域位置信息对应的第二网格区域;
当所述第二网格区域没有与所述第一构件元素所处的网格区域重叠时,在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
在实际应用中,比如,如图9所示,可以通过坐标形式表示第二构件元素所对应的区域位置信息,根据区域位置信息可以确定应当编辑第二构件元素的第二网格区域,当检测到第二网格区域与第一构件元素所处的网格区域之间没有重叠时,可以在第二网格区域上编辑第二构件元素。
在一实施例中,具体地,该建筑物构件编辑方法还可以包括:
当所述第二网格区域与所述第一构件元素所处的网格区域重叠时,删除重叠部分网格区域上的第一构件元素,并在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
又比如,如图6所示,虚拟房屋上可能原本就存在由单块屋顶组成的原始屋顶,而玩家希望将原始屋顶替换成由单块屋顶和整体屋顶共同组成的屋顶,此时,在编辑完单块屋顶后,就会出现确定出的第二网格区域上存在原始的单块屋顶的情况,也就是第二网格区域与第一构件元素所处的网格区域重叠的情况,此时应当删除重叠部分网格区域上原来就存在的单块屋顶,并在第二网格区域上编辑整体屋顶。
在一实施例中,虚拟房屋上还可能原本存在原始屋顶,此时不限制原始屋顶的屋顶样式,且玩家希望将原始屋顶替换成由单块屋顶和整体屋顶共同组成的屋顶,此时,在编辑完单块屋顶后,可能出现确定出的第二网格区域上存在原始屋顶构件元素的情况,此时应当将第二网格区域上原本存在的屋顶构件元素进行删除,以便在第二网格区域上编辑整体屋顶。
在一实施例中,比如,如图7所示,玩家还可以选择将包括整体屋顶的屋顶构件替换为只有单块屋顶的屋顶构件,此时,可以移除已经编辑好的第二构件元素,然后将移除部分的网格区域恢复为单块屋顶的贴图,并将网格数据中第二元素标识重置为第一元素标识,从而使得屋顶外观与碰撞属性相匹配。
在一实施例中,可以根据屋顶重置前单块屋顶的摆设方式确定重置方式,比如,原始屋顶是由整体屋顶和同种单块屋顶构成的,那么在移除整体屋顶后,就可以将移除部分的网格区域恢复为原始屋顶中单块屋顶的贴图。又比如,原始屋顶是由整体屋顶和多种单块屋顶构成的,那么在移除整体屋顶后,需要根据剩余的单块屋顶的排列方式进行屋顶的恢复。
206、基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
其中,为了提升游戏体验的真实性,可以对游戏中的虚拟对象设置碰撞属性,使得他们之间在发生接触时,能够符合真实世界中的物理规则,比如,可以在游戏对象与边界之间设置碰撞,使得游戏对象不能走出手机屏幕外,还可以在游戏对象与物理层之间设置碰撞,使得游戏对象不会出现穿墙等现象等等。比如,如图10所示,对于游戏中的屋顶,就可以设置这样平面的碰撞。
在实际应用中,比如,如图11所示,在网格区域中成功编辑第一构件元素和第二构件元素之后,可以根据每个网格区域对应的元素标识,对网格区域的碰撞属性进行调整,第一元素标识所在网格区域对应的碰撞属性可以调整为平面的碰撞,第二元素标识所在网格区域对应的碰撞属性可以调整为第二构件元素自身对应的碰撞属性。网格区域中已经编辑好了第一构件元素和第二构件元素,并且相应地调整了碰撞属性,此时的碰撞属性是和编辑好的建筑物构件相匹配的,此时得到的建筑物构件就是编辑后建筑物构件。
在一实施例中,具体地,步骤“基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件”,可以包括:
将编辑后的构件元素所对应的元素标识写入网格数据中;
基于所述网格数据、以及所述第二构件元素对应的碰撞属性,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
在实际应用中,比如,如图12所示,图中包括多个网格的整体数据就是网格数据,可以以该网格数据为依据,对网格区域中的碰撞属性进行调整。在编辑第一构件元素之后,可以将第一构件元素对应的第一元素标识写入相应的网格数据中,在编辑第二构件元素之后,可以将第二构件元素对应的第二元素标识写入相应的网格数据中,此时得到填写完全的网格数据。然后便可以以该网格数据为基准,根据第二构件元素对应的碰撞属性,对多个网格区域的碰撞属性进行调整,并得到编辑后建筑物构件。
其中,本申请的建筑物构件编辑方法,不但支持各种构件样式的建筑物构件,而且会使得虚拟建筑物中建筑物构件与碰撞属性相匹配,并且各种构件元素样式的屋顶可以共存,从而实现多样化的编辑。
由上可知,本申请实施例可以确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。该方案不但支持各种构件样式的建筑物构件,而且会使得虚拟建筑物中建筑物构件与碰撞属性相匹配,并且各种构件元素样式的屋顶可以共存,从而实现多样化的编辑,提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
根据前面实施例所描述的方法,以下将以该建筑物构件编辑方法由电子设备执行为例作进一步详细说明。参考图3,本申请实施例的建筑物构件编辑方法的具体流程可以如下:
301、电子设备确定虚拟房屋中需要编辑屋顶的屋顶区域。
302、电子设备将屋顶区域划分为多个网格区域。
在实际应用中,可以将屋顶区域进行划分,每一个网格区域对应屋顶的一个区域,然后通过屋顶摆放信息确定每个网格区域所摆放的是单块屋顶还是整体屋顶。
303、电子设备获取目标屋顶样式对应的屋顶摆放信息数组。
304、电子设备遍历屋顶摆放信息数组,确定其中单块屋顶的屋顶标识。
在实际应用中,可以遍历屋顶摆放信息数组,根据其中存放的屋顶ID,找到其中所有单块屋顶对应的屋顶ID。
305、电子设备在单块屋顶的屋顶标识对应的网格区域上编辑单块屋顶。
在实际应用中,可以根据屋顶摆放信息数组中单块屋顶的屋顶ID,在单块屋顶的屋顶ID所对应的网格区域上,贴上单块屋顶的贴图。如果所有的网格区域摆放的都是单块屋顶,就得到一个平屋顶,否则就会有一部分镂空,等待摆上整体屋顶,然后将所有单块屋顶的屋顶ID写入到网格数据中。
306、电子设备根据整体屋顶的摆放信息,创建整体屋顶的屋顶模型。
307、电子设备在整体屋顶对应的挖空区域上编辑整体屋顶。
在实际应用中,若只在部分网格区域中摆放了单块屋顶,就会在屋顶的中间部分存在镂空的区域,由于原始的固定碰撞的存在,使得这一部分区域还是不可跳出的。因此可以根据整体屋顶预先配置的挖空区域,确定整体屋顶需要摆放的位置,并检测该挖空区域对应网格区域的范围是否覆盖了单块屋顶的范围,如果覆盖了,就删除覆盖部分单块屋顶的贴图,并摆放上整体屋顶;如果没有覆盖,直接摆放上整体屋顶即可,最后将整体屋顶的屋顶ID写入到网格数据中。
308、电子设备根据网格数据,调整屋顶区域的碰撞属性。
在实际应用中,将单块屋顶的屋顶ID和整体屋顶的屋顶ID写入到网格数据后,就可以得到如图12所示的网格数据,根据该网格数据,就可以对屋顶区域的碰撞属性进行调整,使其与屋顶的贴图外观相匹配。
由上可知,本申请实施例可以通过电子设备确定虚拟房屋中需要编辑屋顶的屋顶区域,将屋顶区域划分为多个网格区域,获取目标屋顶样式对应的屋顶摆放信息数组,遍历屋顶摆放信息数组,确定其中单块屋顶的屋顶标识,在单块屋顶的屋顶标识对应的网格区域上编辑单块屋顶,根据整体屋顶的摆放信息,创建整体屋顶的屋顶模型,在整体屋顶对应的挖空区域上编辑整体屋顶,根据网格数据,调整屋顶区域的碰撞属性。该方案不但支持各种构件样式的建筑物构件,而且会使得虚拟建筑物中建筑物构件与碰撞属性相匹配,并且各种构件元素样式的屋顶可以共存,从而实现多样化的编辑,提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
为了更好地实施以上方法,相应的,本申请实施例还提供一种建筑物构件编辑装置,该建筑物构件编辑装置可以集成在电子设备中,参考图14,该建筑物构件编辑装置包括确定模块141、划分模块142、集合确定模块143、第一编辑模块144、第二编辑模块145和调整模块146,如下:
确定模块141,用于确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域;
划分模块142,用于将所述建筑物构件区域划分为多个网格区域;
集合确定模块143,用于确定目标构件样式对应的元素标识集合,其中,所述元素标识集合包括多个元素标识,每个所述元素标识对应一个网格区域,所述多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识;
第一编辑模块144,用于基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素;
第二编辑模块145,用于基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素;
调整模块146,用于基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
在一实施例中,所述第一编辑模块144可以包括标识确定子模块、区域确定子模块和编辑子模块,如下:
标识确定子模块,用于从所述构件元素集合的多个所述元素标识中,确定第一构件元素样式下第一构件元素的第一元素标识;
区域确定子模块,用于基于所述第一元素标识在所述元素标识集合中的集合索引,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域;
编辑子模块,用于在所述第一网格区域上编辑所述第一构件元素。
在一实施例中,所述区域确定子模块可以具体用于:
确定每个所述第一元素标识在所述元素标识集合中的集合索引;
基于所述集合索引与网格区域所在位置之间的对应关系,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域。
在一实施例中,所述编辑子模块可以具体用于:
确定所述第一元素标识所属的贴图样式;
在所述第一元素标识对应的第一网格区域上,编辑所述贴图样式对应的第一构件元素。
在一实施例中,所述第二编辑模块145可以具体用于:
基于所述第二构件元素对应的区域位置信息,从所述多个网格区域中确定所述区域位置信息对应的第二网格区域;
当所述第二网格区域没有与所述第一构件元素所处的网格区域重叠时,在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
在一实施例中,所述第二编辑模块145还可以具体用于:
当所述第二网格区域与所述第一构件元素所处的网格区域重叠时,删除重叠部分网格区域上的第一构件元素,并在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
在一实施例中,所述调整模块可以具体用于:
将编辑后的构件元素所对应的元素标识写入网格数据中;
基于所述网格数据、以及所述第二构件元素对应的碰撞属性,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本申请实施例可以通过确定模块141确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,通过划分模块142将建筑物构件区域划分为多个网格区域,通过集合确定模块143确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,通过第一编辑模块144基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,通过第二编辑模块145基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,通过调整模块146基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。该方案不但支持各种构件样式的建筑物构件,而且会使得虚拟建筑物中建筑物构件与碰撞属性相匹配,并且各种构件元素样式的屋顶可以共存,从而实现多样化的编辑,提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
本申请实施例还提供一种电子设备,该电子设备可以集成本申请实施例所提供的任一种建筑物构件编辑装置。
例如,如图15所示,其示出了本申请实施例所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器151、一个或一个以上计算机可读存储介质的存储器152、电源153和输入单元154等部件。本领域技术人员可以理解,图15中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器151是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器152内的软件程序和/或模块,以及调用存储在存储器152内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器151可包括一个或多个处理核心;优选的,处理器151可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器151中。
存储器152可用于存储软件程序以及模块,处理器151通过运行存储在存储器152的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器152可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器152可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器152还可以包括存储器控制器,以提供处理器151对存储器152的访问。
电子设备还包括给各个部件供电的电源153,优选的,电源153可以通过电源管理系统与处理器151逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源153还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元154,该输入单元154可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器151会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器152中,并由处理器151来运行存储在存储器152中的应用程序,从而实现各种功能,如下:
确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本申请实施例可以确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。该方案不但支持各种构件样式的建筑物构件,而且会使得虚拟建筑物中建筑物构件与碰撞属性相匹配,并且各种构件元素样式的屋顶可以共存,从而实现多样化的编辑,提升虚拟建筑物中建筑物构件与碰撞属性的匹配性。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种电子设备,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种建筑物构件编辑方法中的步骤。例如,该指令可以执行如下步骤:
确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域,将建筑物构件区域划分为多个网格区域,确定目标构件样式对应的元素标识集合,其中,元素标识集合包括多个元素标识,每个元素标识对应一个网格区域,多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识,基于元素标识集合,在相应的网格区域上编辑第一构件元素样式下的第一构件元素,基于第二构件元素对应的区域位置信息,在相应的网格区域上编辑第二构件元素样式下的第二构件元素,基于编辑后的构件元素所对应的元素标识,对多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种建筑物构件编辑方法中的步骤,因此,可以实现本申请实施例所提供的任一种建筑物构件编辑方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种建筑物构件编辑方法、装置、存储介质和电子设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种建筑物构件编辑方法,其特征在于,包括:
确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域;
将所述建筑物构件区域划分为多个网格区域;
确定目标构件样式对应的元素标识集合,其中,所述元素标识集合包括多个元素标识,每个所述元素标识对应一个网格区域,所述多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识;
基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素;
基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素;
基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
2.根据权利要求1所述的建筑物构件编辑方法,其特征在于,基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素,包括:
从所述构件元素集合的多个所述元素标识中,确定第一构件元素样式下第一构件元素的第一元素标识;
基于所述第一元素标识在所述元素标识集合中的集合索引,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域;
在所述第一网格区域上编辑所述第一构件元素。
3.根据权利要求2所述的建筑物构件编辑方法,其特征在于,基于所述第一元素标识在所述元素标识集合中的集合索引,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域,包括:
确定每个所述第一元素标识在所述元素标识集合中的集合索引;
基于所述集合索引与网格区域所在位置之间的对应关系,从所述多个网格区域中确定所述第一元素标识对应的第一网格区域。
4.根据权利要求2所述的建筑物构件编辑方法,其特征在于,在所述第一网格区域上编辑所述第一构件元素,包括:
确定所述第一元素标识所属的贴图样式;
在所述第一元素标识对应的第一网格区域上,编辑所述贴图样式对应的第一构件元素。
5.根据权利要求1所述的建筑物构件编辑方法,其特征在于,基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素,包括:
基于所述第二构件元素对应的区域位置信息,从所述多个网格区域中确定所述区域位置信息对应的第二网格区域;
当所述第二网格区域没有与所述第一构件元素所处的网格区域重叠时,在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
6.根据权利要求5所述的建筑物构件编辑方法,其特征在于,所述方法还包括:
当所述第二网格区域与所述第一构件元素所处的网格区域重叠时,删除重叠部分网格区域上的第一构件元素,并在所述第二网格区域上编辑所述第二构件元素样式下的第二构件元素。
7.根据权利要求1所述的建筑物构件编辑方法,其特征在于,基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件,包括:
将编辑后的构件元素所对应的元素标识写入网格数据中;
基于所述网格数据、以及所述第二构件元素对应的碰撞属性,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
8.一种建筑物构件编辑装置,其特征在于,包括:
确定模块,用于确定虚拟建筑物中待编辑建筑物构件的建筑物构件区域;
划分模块,用于将所述建筑物构件区域划分为多个网格区域;
集合确定模块,用于确定目标构件样式对应的元素标识集合,其中,所述元素标识集合包括多个元素标识,每个所述元素标识对应一个网格区域,所述多个元素标识至少包括第一构件元素样式下第一构件元素的第一元素标识、第二构件元素样式下第二构件元素的第二元素标识;
第一编辑模块,用于基于所述元素标识集合,在相应的网格区域上编辑所述第一构件元素样式下的第一构件元素;
第二编辑模块,用于基于所述第二构件元素对应的区域位置信息,在相应的网格区域上编辑所述第二构件元素样式下的第二构件元素;
调整模块,用于基于编辑后的构件元素所对应的元素标识,对所述多个网格区域的碰撞属性进行调整,得到编辑后建筑物构件。
9.一种计算机存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-7任一项所述的建筑物构件编辑方法。
10.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010516502.5A CN111589155B (zh) | 2020-06-09 | 2020-06-09 | 一种建筑物构件编辑方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010516502.5A CN111589155B (zh) | 2020-06-09 | 2020-06-09 | 一种建筑物构件编辑方法、装置、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111589155A true CN111589155A (zh) | 2020-08-28 |
CN111589155B CN111589155B (zh) | 2021-08-31 |
Family
ID=72187826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010516502.5A Active CN111589155B (zh) | 2020-06-09 | 2020-06-09 | 一种建筑物构件编辑方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111589155B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115394170A (zh) * | 2022-07-29 | 2022-11-25 | 北京城市网邻信息技术有限公司 | 电子沙盘构建方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2347290A1 (en) * | 2001-05-09 | 2002-11-09 | Free Radical Design Limited | Methods and apparatus for constructing virtual environments |
CN108876920A (zh) * | 2018-06-28 | 2018-11-23 | 网易(杭州)网络有限公司 | 用于三维组件拼接的几何结构数据处理方法和装置 |
CN110102058A (zh) * | 2019-06-10 | 2019-08-09 | 网易(杭州)网络有限公司 | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 |
CN110148203A (zh) * | 2019-05-16 | 2019-08-20 | 网易(杭州)网络有限公司 | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 |
CN110197534A (zh) * | 2019-06-10 | 2019-09-03 | 网易(杭州)网络有限公司 | 虚拟建筑附件模型的挂接方法、装置、处理器及终端 |
CN110262730A (zh) * | 2019-05-23 | 2019-09-20 | 网易(杭州)网络有限公司 | 游戏虚拟资源的编辑方法、装置、设备和存储介质 |
-
2020
- 2020-06-09 CN CN202010516502.5A patent/CN111589155B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2347290A1 (en) * | 2001-05-09 | 2002-11-09 | Free Radical Design Limited | Methods and apparatus for constructing virtual environments |
CN108876920A (zh) * | 2018-06-28 | 2018-11-23 | 网易(杭州)网络有限公司 | 用于三维组件拼接的几何结构数据处理方法和装置 |
CN110148203A (zh) * | 2019-05-16 | 2019-08-20 | 网易(杭州)网络有限公司 | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 |
CN110262730A (zh) * | 2019-05-23 | 2019-09-20 | 网易(杭州)网络有限公司 | 游戏虚拟资源的编辑方法、装置、设备和存储介质 |
CN110102058A (zh) * | 2019-06-10 | 2019-08-09 | 网易(杭州)网络有限公司 | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 |
CN110197534A (zh) * | 2019-06-10 | 2019-09-03 | 网易(杭州)网络有限公司 | 虚拟建筑附件模型的挂接方法、装置、处理器及终端 |
Non-Patent Citations (1)
Title |
---|
佚名: "明日之后斜面墙放不上去怎么办?房顶建造问题汇总[多图]", 《HTTPS://WWW.YOUREN5.COM/NEWS/4159.HTML》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115394170A (zh) * | 2022-07-29 | 2022-11-25 | 北京城市网邻信息技术有限公司 | 电子沙盘构建方法、装置、电子设备及存储介质 |
CN115394170B (zh) * | 2022-07-29 | 2024-05-03 | 北京城市网邻信息技术有限公司 | 电子沙盘构建方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111589155B (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200316476A1 (en) | Information Processing Method and Apparatus, Storage Medium, and Electronic Device | |
US20170048117A1 (en) | Information processing device and method of displaying download progress state | |
CN110152297B (zh) | 虚拟资源的编辑方法及装置、存储介质、电子设备 | |
CN110215712B (zh) | 虚拟资源的编辑方法及装置、存储介质、电子设备 | |
CN110288688B (zh) | 虚拟植被的渲染方法、装置、存储介质与电子设备 | |
JP7528221B2 (ja) | 仮想シーンの表示方法及び装置、コンピュータプログラム並びに電子機器 | |
CN110148203B (zh) | 游戏中虚拟建筑模型的生成方法、装置、处理器及终端 | |
CN110197525B (zh) | 虚拟建筑模型的窗口灯光控制方法、装置、处理器及终端 | |
CN111450529B (zh) | 游戏地图的获取方法、装置、存储介质及电子装置 | |
CN112258634B (zh) | 虚拟建筑的处理方法、装置、设备及存储介质 | |
CN111589155B (zh) | 一种建筑物构件编辑方法、装置、存储介质和电子设备 | |
CN105320297A (zh) | 一种终端设备的控制方法和装置 | |
CN112530012B (zh) | 虚拟地表的处理方法、装置及电子装置 | |
CN106658139A (zh) | 一种焦点控制方法及装置 | |
CN106485784A (zh) | 基于多终端设备数据同步的室内设计成像处理方法 | |
CN110928397B (zh) | 用户界面刷新方法、装置、存储介质及电子装置 | |
CN113546416B (zh) | 游戏场景处理方法、装置、计算机设备及存储介质 | |
CN104777999B (zh) | 触摸位置显示方法及触摸位置显示系统 | |
CN113434927B (zh) | 一种基于户型扩展构件的家装设计方法及系统 | |
WO2024021955A1 (zh) | 三维指引地图生成方法、装置、存储介质和电子装置 | |
WO2024051414A1 (zh) | 热区的调整方法、装置、设备、存储介质及程序产品 | |
CN111569428A (zh) | 游戏中的信息处理方法和装置 | |
CN112138380A (zh) | 一种游戏中数据编辑的方法和装置 | |
CN111589151A (zh) | 一种交互功能的实现方法、装置、设备和存储介质 | |
JP5767371B1 (ja) | 仮想空間平面上に配置したオブジェクトを表示制御するゲーム・プログラム |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40027417 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |