CN109920023B - 一种游戏中模型摆放的方法和装置 - Google Patents

一种游戏中模型摆放的方法和装置 Download PDF

Info

Publication number
CN109920023B
CN109920023B CN201910245757.XA CN201910245757A CN109920023B CN 109920023 B CN109920023 B CN 109920023B CN 201910245757 A CN201910245757 A CN 201910245757A CN 109920023 B CN109920023 B CN 109920023B
Authority
CN
China
Prior art keywords
model
templates
template
model template
preset
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.)
Active
Application number
CN201910245757.XA
Other languages
English (en)
Other versions
CN109920023A (zh
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 CN201910245757.XA priority Critical patent/CN109920023B/zh
Publication of CN109920023A publication Critical patent/CN109920023A/zh
Application granted granted Critical
Publication of CN109920023B publication Critical patent/CN109920023B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种游戏中模型摆放的方法和装置,所述方法包括:从预设的模型模板数据库中获取至少一个模型模板,所述模型模板中包含预搭配的装饰品模型的位置信息;将获取的模型模板放入预设的摆放区域;确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;根据所述位置信息,将所述装饰品模型放入所述摆放区域中。通过本发明实施例的游戏中模型摆放的方法,不需要用户手动一个一个添加装饰品模型,提高了摆放模型的效率,并且采用模型模板的形式摆放,解决了单个装饰品随机摆放时杂乱无章的问题。

Description

一种游戏中模型摆放的方法和装置
技术领域
本发明涉及游戏领域,特别是涉及一种游戏中模型摆放的方法和装置。
背景技术
在二维游戏或三维游戏的制作过程中,通常涉及到游戏场景的设计,传统的游戏场景设计通常由游戏美术设计人员来完成。现在也存在一些游戏,允许用户自行设计游戏场景。由用户使用游戏内预设的模型,摆放在游戏场景中,从而实现游戏场景的设计。
但是,当游戏场景较大时,用户需要摆放的模型数量较多,导致游戏场景的设计需要花费大量的时间。特别是如果游戏为移动设备中游戏时,由于移动设备的屏幕通常比桌面设备更小,导致用户自行设计游戏场景设计的难度较高。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种游戏中模型摆放的方法和装置。
本发明提供一种游戏中模型摆放的方法,包括:
从预设的模型模板数据库中获取至少一个模型模板,所述模型模板中包含预搭配的装饰品模型的位置信息;
将获取的模型模板放入预设的摆放区域;
确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;
当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;
根据所述位置信息,将所述摆放区域中的模型模板对应的装饰品模型放入所述摆放区域中
将所述摆放区域中的模型模板中的装饰品模型放入所述摆放区域对应的位置。
优选地,还包括:
确定是否存在摆放位置超出所述摆放区域的边缘的模型模板;
若是,则删除摆放位置超出所述摆放区域的边缘的模型模板。
优选地,所述从预设的模型模板数据库中获取至少一个模型模板,包括:
根据所述摆放区域的面积及所述模型模板数据库中模型模板的平均面积,确定待获取的模型模板的数量;
从预设的模型模板数据库中获取所述数量的模型模板。
优选地,所述确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠,包括:
确定每一所述模型模板与其他任一模型模板的中心点在水平方向和垂直方向的距离,以及水平长度之和及垂直宽度之和;
当一模型模板与一其他模型模板两者的中心点在水平方向的距离小于所述两者的所述水平长度之和的一半,或者,当所述两者的中心点在垂直方向的距离小于所述两者的所述垂直宽度之和的一半,则确定所述两者之间存在重叠。
优选地,所述当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,包括:
当存在模型模板与其他模型模板存在重叠,则根据重叠的两个模型模板的位置确定所述两个模型模板中第一模型模板相对于所述两个模型模板中第二模型模板的偏差方向;
控制所述第一模型模板在所述偏差方向移动预设距离,或者控制所述第二模型模板在所述偏差方向的反方向移动预设距离。
优选地,所述当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,包括:
当目标模型模板与其他模型模板存在重叠时,则根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离;
根据所述待移动的方向和距离移动所述目标模型模板。
优选地,所述偏差方向包括水平偏差方向和垂直偏差方向。
优选地,所述预设的模型模板数据库中的模型模板包括基础模型模板及演变模型模板,所述演变模型模板为对对应的基础模型模板进行预设角度的旋转后得到的模型模板。
本发明还提供一种游戏中模型摆放的装置,所述装置包括:
获取模块,用于从预设的模型模板数据库中获取至少一个模型模板,所述模型模板中包含预搭配的装饰品模型的位置信息;
摆放模块,用于将获取的所述模型模板放入预设的摆放区域;
确定模块,用于确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;
移动模块,用于当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;
加入模块,用于根据所述位置信息,将所述摆放区域中的模型模板对应的装饰品模型放入所述摆放区域中。
一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行本发明所述的方法。
一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行本发明所述的方法。
与现有技术相比,本发明包括以下优点:
本发明实施例的游戏中模型摆放的方法,采用将包含预搭配装饰品模型信息的模型模板放入摆放区域中,调整模型模板在摆放区域中的位置,使得模型模板之间不存在重叠,并将模型模板对应的装饰品模型放入摆放区域中,从而完成游戏场景中模型的摆放,本方案中用户只需要创建游戏场景,系统会为该游戏场景摆放搭配好的装饰品模型,不需要用户手动一个一个添加装饰品模型,提高了摆放模型的效率,并且采用模型模板的形式摆放,解决了单个装饰品随机摆放时杂乱无章的问题。
附图说明
图1是本发明实施例的一种游戏中模型摆放的方法的流程示意图;
图2是本发明实施例的一种游戏中模型摆放的装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参见图1所示,本发明实施例提供一种游戏中模型摆放的方法,包括:
步骤101,从预设的模型模板数据库中获取至少一个模型模板,所述模型模板中包含预搭配的装饰品模型的位置信息;
在本发明实施例中,所述模型模板数据库中包括至少一个模型模板。所述模型模板包括可以用于指示模型模板自身大小的尺寸信息,以及预搭配的装饰品模型的位置信息。
假设有一些现成的装饰瓶模型资源,如花、草、树、石头等,如果由用户每次单独一个个的随机摆放到游戏场景中,不仅繁琐,并且最后的场景搭配会过于随机且不真实,玩家很难接受。在本发明实施例中,为了降低在游戏中摆放装饰品模型的难度以及装饰品模型的摆放过于随机的问题,本申请可以预先由游戏美术设计人员或者用户设计模型模板,在指定大小的范围内,放入至少一个装饰品模型,保存装饰品模型信息,包括装饰品模型的尺寸信息以及装饰品模型的位置信息,如装饰品模型整体占用的长宽信息,从而得到模型模板。由于模型模板中已包含预先搭配的装饰品模型,因此装饰品的位置相对固定,用户只需加载该模型模板即可实现装饰品模型的摆放,避免了一个一个添加装饰品的繁琐工作,并且装饰品模型的摆放真实,符合用户的观感。
在本发明实施例中,当采用模型模板在摆放区域中设置装饰品模型时,由于模型模板中已经包含了至少一个预搭配的装饰品模型的位置信息,用户在设计游戏场景时,可以无需一一选取预设的装饰品模型,进行游戏场景设计,而可以采用利用所述模型模板,一次确定至少一个装饰品模型的位置,进一步降低了用户摆放装饰品模型的难度。
步骤102,将获取的模型模板放入预设的摆放区域;
在本发明实施例中,用户可以在手游编辑器中新建一个指定大小的场景,作为游戏场景,作为摆放装饰品模型的区域,在此称为摆放区域。或者,在预设的游戏场景中选定一区域,作为摆放区域,这里的游戏场景可以为平面或三维场景。
在本发明实施例中,初始时,所述模型模板可以放入所述摆放区域的随机位置中,且单个模型模板的大小不超过摆放区域的大小。由于装饰品模型最终是要放置在场景上,因此本发明会自动过滤掉长或宽大于游戏场景的模型模板,使其不会被随机选中。
步骤103,确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;
在本发明实施例中,由于模型模板是随机放入所述摆放区域中,模型模板之间可能存在重叠,这时如果直接摆放装饰品模型的话,可能会造成装饰品模型之间的重叠。由此,在摆放装饰品模型之前可以确定每一所述模型模板是否与其他模型模板存在重叠,用于进一步调整所述模型模板的位置,以完成模型摆放。
步骤104,当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;
在本发明实施例中,当存在一所述模型模板与其他模型模板存在重叠时,则需要移动该模型模板,使重叠的模型模板相互远离。
在本发明实施例中,每次移动一存在重叠的所述模型模板后,可以继续确定剩余的模型模板是否存在重叠,直至每一模型模板与其他模型模板不存在重叠,则完成所述模型模板的摆放。
在本发明实施例中,所述模型模板在移动后,摆放位置可以超出所述摆放区域的边缘,摆放位置超出所述摆放区域的边缘的模型模板,可以认为是不需要的模型模板,由此,在确定每一所述模型模板是否与其他模型模板存在重叠时,也可以只确定所述摆放区域内的每一模型模板是否与其他模型模板存在重叠,从而可以提高移动模型模板的效率。
步骤105,根据所述位置信息,将所述摆放区域中的模型模板对应的装饰品模型放入所述摆放区域中。
在本发明实施例中,在确定所述模型模板在摆放区域中的位置后,可以根据所述模型模板中的装饰品模型的位置信息,对应地将所述装饰品模型放入所述摆放区域中,以完成所述装饰品模型的摆放。
通过本发明实施例的游戏中模型摆放的方法,采用将包含预搭配装饰品模型信息的模型模板放入摆放区域中,调整模型模板在摆放区域中的位置,使得模型模板之间不存在重叠,并将模型模板对应的装饰品模型放入摆放区域中,从而完成游戏场景中模型的摆放,本方案中用户只需要创建游戏场景,系统会为该游戏场景摆放搭配好的装饰品模型,不需要用户手动一个一个添加装饰品模型,提高了摆放模型的效率,并且采用模型模板的形式摆放,解决了单个装饰品随机摆放时杂乱无章的问题。
在本发明的一种实施例中,所述方法还包括:
S11,确定是否存在摆放位置超出所述摆放区域的边缘的模型模板;
在本发明实施例中,所述摆放位置为所述模型模板在游戏场景(即摆放区域)中的位置。
在本发明实施例中,所述预设的至少一个模型模板的总面积可以大于所述摆放区域的面积。在模型模板在调整位置的过程中,为使其不与其他模型模板重叠,其移动后,模型模板的摆放位置可以超出所述摆放区域的边缘。
S12,若是,则删除摆放位置超出所述摆放区域的边缘的模型模板。
在本发明实施例中,摆放位置超出所述摆放区域的边缘的模型模板可以认为是多余的模型模板,摆放区域中可能已经没有空间位置摆放位置超出所述摆放区域的边缘的模型模板,因此可以删除该模型模板,只保留移动后仍在摆放区域内的模型模板。
通过本发明实施例的游戏中模型摆放的方法,采用调整随机摆放的模型模板的位置,使得模型模板两两之间互不重叠,并且在调整模型模板的位置后,进一步删除摆放位置超出摆放区域的边缘的模型模板,确保所有模型模板都处于摆放区域中,从而完成模型模板在摆放区域中的摆放,为装饰品模型的摆放建立摆放基础。
在本发明的一种实施例中,所述从预设的模型模板数据库中获取至少一个模型模板,包括:
S21,根据所述摆放区域的面积及所述模型模板数据库中模型模板的平均面积,确定待获取的模型模板的数量;
在本发明实施例中,所述模型模板可以根据其尺寸信息,得到模型模板的面积。所述模型模板数据库中模型模板的大小不一,可以根据所述模型模板数据库中每一模型模板的面积,确定所述模型模板数据库中模型模板的平均面积。
在本发明实施例中,可以根据摆放区域的面积以及所述模型模板数据库中模型模板的平均面积,确定一目标数量。具体地,可以将摆放区域的面积除以所述模型模板数据库中模型模板的平均面积得到的数值绝对值,确定为目标数量。
在本发明的一种优选实施例中,还可以引入一预设填充度参数,根据所述面积、所述平均面积、以及所述预设填充度参数,确定目标数量。所述预设填充度参数用于调节摆放区域中模型模板的数量,当预设填充度参数越高,则说明此时希望摆放区域尽可能被填满,当所述预设填充度参数越低,则说明此时希望摆放区域可以保留一定的空白位置。
在具体实现中,所述预设填充度参数的取值范围可以在0~1之间,所述目标数量=(摆放区域的面积/所述模型模板数据库中模型模板的平均面积)×预设填充度参数,即目标数量为摆放区域的面积除以模型模板的平均面积再乘以预设填充度参数后取整。
S22,从预设的模型模板数据库中获取所述数量的模型模板。
在本发明实施例中,所述目标数量的模型模板可以使模型模板的总面积尽可能接近摆放区域的面积,使摆放区域尽可能被填满,同时避免过多多余的模型模板。
在本发明实施例中,可以在预设的模型模板数据库中随机有放回地选取目标数量次数的模型模板,从而得到所述目标数量的模型模板。
通过本发明实施例的游戏中模型摆放的方法,根据所述摆放区域的面积及所述模型模板数据库中模型模板的平均面积,确定待获取的模型模板的目标数量,所述目标数量的模型模板可以使模型模板的总面积尽可能接近摆放区域的面积,使摆放区域尽可能被填满,同时避免过多多余的模型模板。
在本发明的一种实施例中,所述确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠,包括:
S31,确定每一所述模型模板与其他任一模型模板的中心点在水平方向和垂直方向的距离,以及水平长度之和及垂直宽度之和;
在本发明实施例中,可以采用遍历的方式,依次选择所述摆放区域中每一所述模型模板,并比较每一所述模型模板是否与其他模型模板存在重叠,以进一步确定模型模板是否需要移动。
在本发明实施例中,可以在所述摆放区域内建立一平面直角坐标系,该平面直角坐标系的X轴与水平线平行,平面直角坐标系的Y轴与X轴垂直,且X轴和Y轴构成的平面与所述摆放区域平行。
在本发明实施例中,可以在所述摆放区域内建立一单元格网络,每一单元格可以为一四边形,单元格之间相互贴靠,从而所述单元格网络中可以包括若干横向线条以及若干纵向线条。由此,还可以基于单元格确定模型模板的长度以及宽度,并将与单元格网络中横向线条平行的方向确定为水平,与单元格网络中纵向线条平行的方向确定为垂直。
在本发明实施例中,所述中心点为模型模板的几何中心。所述水平方向上模型模板的长度为水平长度,所述垂直方向上模型模板的长度为垂直长度。
在本发明实施例中,可以通过比较每一模型模板与任一其他模型模板之间中心点在水平方向和垂直方向的距离,以及水平长度之和及垂直宽度之和,以确定模型模板之间是否存在重叠。
S32,当一模型模板与一其他模型模板两者的中心点在水平方向的距离小于所述两者的所述水平长度之和的一半,或者,当所述两者的中心点在垂直方向的距离小于所述两者的所述垂直宽度之和的一半,则确定所述两者之间存在重叠。
在本发明实施例中,当一模型模板与任一其他模型模板两者的中心点在水平方向的距离小于所述两者的所述水平长度之和的一半,或者,当所述两者的中心点在垂直方向的距离小于所述两者的所述垂直宽度之和的一半时,则可以确定所述两者之间存在重叠。
通过本发明实施例的游戏中模型摆放的方法,可以根据每一所述模型模板与其他任一模型模板的中心点在水平方向和垂直方向的距离,以及水平长度之和及垂直宽度之和,确定模型模板之间是否存在重叠。
在本发明的一种实施例中,所述当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,包括:
S41,当存在模型模板与其他模型模板存在重叠,则根据重叠的两个模型模板的位置确定所述两个模型模板中第一模型模板相对于所述两个模型模板中第二模型模板的偏差方向;
在本发明实施例中,所述偏差方向可以为所述两个模型模板中第二模型模板的中心点指向所述两个模型模板中第一模型模板的中心点的方向。当存在模型模板与其他模型模板存在重叠时,可以基于重叠的两个模型模板的位置,确定所述两个模型模板中第一模型模板相对于所述两个模型模板中第二模型模板的偏差方向。
在本发明的一种优选实施例中,所述偏差方向可以包括水平偏差方向以及垂直偏差方向。所述水平偏差方向可以平行于所述摆放区域的水平方向,所述垂直偏差方向可以平行于所述摆放区域的垂直方向。由此,所述偏差方向,可以分解为水平偏差方向以及垂直偏差方向。便于后续更好地确定所述第一模型模板或第二模型模板的移动方向。
S42,控制所述第一模型模板在所述偏差方向移动预设距离,或者控制所述第二模型模板在所述偏差方向的反方向移动预设距离。
在本发明实施例中,在确定所述偏差方向后,可以控制所述第一模型模板向所述偏差方向移动预设距离,使所述第一模型模板可以远离第二模型模型模板。
在本发明实施例中,所述预设距离可以为1cm、1像素距离等,本发明对此不做限制。当所述摆放区域内建立有单元格网络时,所述预设移动距离还可以为0.5单元格、1单元格、2单元格等,本发明对此不做限制。
在本发明实施例中,当所述预设移动距离较大时,可以在较少的次数内完成模型模板之间的分散,但最终模型模板之间的距离可能较大,使所述摆放区域中的装饰品模型数量较少。当所述预设移动距离较小时,需要较多的次数才可完成模型模板之间的分散,但最终模型模板之间的距离较小,使所述摆放区域中的装饰品模板数量较多。因此可以根据实际情况设置移动距离。
在本发明的一种优选实施例中,所述偏差方向包括水平偏差方向以及垂直偏差方向时,可以控制所述第一模型模板在水平偏差方向移动预设距离,和/或,在垂直偏差方向上移动预设距离;或者,可以控制所述第二模型模板在水平偏差方向的反方向移动预设距离,和/或,在垂直偏差方向的反方向移动预设距离,以更好地完成所述第一模型模板或第二模型模板的移动。
在本发明实施例中,在控制所述第一模型模板在所述偏差方向移动预设距离,或者控制所述第二模型模板在所述偏差方向的反方向移动预设距离之后,可以继续执行S41~S42步骤,直至两个模型模板之间完全分离。
在本发明实施例中,在两个模型模板之间完全分离后,可以继续执行步骤103~步骤104,直至每一模型模板与其他模型模板不存在重叠。
通过本发明实施例的游戏中模型摆放的方法,通过根据重叠的两个模型模板的位置确定所述两个模型模板中第一模型模板相对于所述两个模型模板中第二模型模板的偏差方向,并控制所述第一模型模板在所述偏差方向移动预设距离,或者控制所述第二模型模板在所述偏差方向的反方向移动预设距离,实现了两个模型模板之间的分散,并最终实现每一模型模板与其他模型模板不存在重叠,实现了游戏中模型模板的自动摆放。
在本发明的另一种实施例中,所述当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,包括:
S51,当目标模型模板与其他模型模板存在重叠时,则根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离;
在本发明实施例中,还可以采用遍历的方式,依次确定每一模型模板与其他模型模板是否存在重叠,当存在一模型模板与其他模型模板存在重叠时,可以将与其他模型模板存在重叠的模型模板确定为目标模型模板。并根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离。
在本发明的优选实施例中,所述根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离,包括:
S511,根据每一与所述目标模型模板重叠的其他模型模板的位置,依次确定所述目标模型模板与每一存在重叠的其他模型模板之间的偏差方向;
在本发明实施例中,所述偏差方向可以为一存在重叠的其他模型模板的中心点指向所述目标模型模板的中心点的方向。由于所述目标模型模板可以与至少一个其他模型模板之间存在重叠,由此,可以依次确定所述目标模型模板与每一存在重叠的其他模型模板之间的偏差方向,得到至少一个所述偏差方向。
在本发明的一种优选实施例中,所述偏差方向可以包括水平偏差方向以及垂直偏差方向。所述水平偏差方向可以平行于所述摆放区域的水平方向,所述垂直偏差方向可以平行于所述摆放区域的垂直方向。由此,所述目标模型模板与一存在重叠的其他模型模板之间的偏差方向,可以分解为水平偏差方向以及垂直偏差方向,从而可以依次确定所述目标模型模板与每一存在重叠的其他模型模板之间的至少一个水平偏差方向以及至少一个垂直偏差方向。
S512,根据所述目标模型模板与每一存在重叠的其他模型模板之间的偏差方向以及预设移动距离,确定所述目标模型模板的待移动的方向以及距离;
在本发明实施例中,可以预设所述模型模板在偏差方向移动预设移动距离。所述预设移动距离可以为1cm、1像素距离等,本发明对此不做限制。
当所述摆放区域内建立有单元格网络时,所述预设移动距离还可以为0.5单元格、1单元格、2单元格等,本发明对此不做限制。
在本发明实施例中,当所述预设移动距离较大时,可以在较少的次数内完成模型模板之间的分散,但最终模型模板之间的距离可能较大,使所述摆放区域中的装饰品模型数量较少。当所述预设移动距离较小时,需要较多的次数才可完成模型模板之间的分散,但最终模型模板之间的距离较小,使所述摆放区域中的装饰品模板数量较多。
在本发明实施例中,可以根据目标模型模板与每一个存在重叠的其他模型模板的偏差反向确定目标模型模板的待移动方向;可以将所述目标模型模板与每一存在重叠的其他模型模板之间的水平偏差方向上的预设移动距离进行叠加,以及垂直偏差方向上的预设移动距离进行叠加,从而最终确定所述目标模型模板的待移动距离。
作为本发明的一种示例,所述目标模型模板与三个其他模型模板存在重叠。其中,所述目标模型模板与第一其他模型模板的偏差方向为水平向左以及垂直向下,所述目标模型模板与第二其他模型模板的偏差方向为水平向左以及垂直向上,所述目标模型模板与第三其他模型模板的偏差方向为水平向右。所述预设移动距离为1,由此,将相同偏差方向的所述预设移动距离叠加后,可以得到所述目标模型模板在该偏差方向待移动的距离,因此目标模型模板需要水平向左移动2,水平向右移动1,垂直向上移动1,垂直向下移动1,最终待移动的方向应为水平向左,待移动的距离为1。
S52,根据所述待移动的方向和距离移动所述目标模型模板。
在本发明实施例中,在确定所述待移动的方向以及距离后,即可控制所述目标模型模板在所述待移动的方向上移动待移动的距离。
在本发明实施例中,根据所述待移动的方向和距离移动所述目标模型模板之后,所述目标模型模板可能仍与其他模型模板重叠。可以继续判断所述目标模型模板是否还与其他模型模板重叠,若重叠,则继续执行上述S51~S52步骤,直至所述目标模型模板不与其他模型模板重叠,再继续判断下一个遍历的模型模板是否与其他模型模板重叠。由此重复遍历所有模型模板,直至每一模型模板与其他模型模板不存在重叠。
在本发明实施例中,根据所述待移动的方向和距离移动所述目标模型模板之后,也可以无论所述目标模型模板是否与其他模型模板重叠,都继续判断下一个遍历到的模型模板是否与其他模型模板重叠,并在存在重叠时执行上述S51~S52步骤。由此重复遍历所有模型模板,直至每一模型模板与其他模型模板不存在重叠。
通过本发明实施例的游戏中模型摆放的方法,通过当目标模型模板与其他模型模板存在重叠时,则根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离,并根据所述待移动的方向和距离移动所述目标模型模板,从而实现使每一模型模板与其他模型模板不存在重叠的效果。
在本发明的一种实施例中,所述预设的模型模板数据库中的模型模板包括基础模型模板及演变模型模板,所述演变模型模板为对对应的基础模型模板进行预设角度的旋转后得到的模型模板。
在本发明实施例中,为了使所述装饰品模型的摆放方式更加丰富,可以对所述预设的模型模板数据库进行扩展。游戏美术设计人员或者用户设计了基础模型模板后,可以对所述基础模型模板进行预设角度的旋转,得到演变模型模板。从而在不增加模型模板设计用时的基础上,增加了模型模板的数量。
在本发明实施例中,所述预设角度可以为90°、180°、270°等,本发明对此不做限制。
通过本发明实施例的游戏中模型摆放的方法,通过基础模型模板进行预设角度的旋转后得到演变模型模板,在不增加模型模板设计用时的基础上,增加了模型模板的数量,使所述装饰品模型的摆放方式更加丰富。
参考图2,示出了本发明一种游戏中模型摆放的装置,所述装置包括:
获取模块201,用于从预设的模型模板数据库中获取至少一个模型模板,所述模型模板中包含预搭配的装饰品模型的位置信息;
摆放模块202,用于将获取的所述模型模板放入预设的摆放区域;
确定模块203,用于确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;
移动模块204,用于当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;
加入模块205,用于根据所述位置信息,将所述摆放区域中的模型模板对应的装饰品模型放入所述摆放区域中。
在本发明的一种实施例中,所述装置还包括:
边缘确定模块,用于确定是否存在摆放位置超出所述摆放区域的边缘的模型模板;
模型模板删除模块,用于当边缘确定模块确定存在摆放位置超出所述摆放区域的边缘的模型模板,则删除摆放位置超出所述摆放区域的边缘的模型模板。
在本发明的一种实施例中,所述获取模块201包括:
数量确定子模块,用于根据所述摆放区域的面积及所述模型模板数据库中模型模板的平均面积,确定待获取的模型模板的数量;
获取子模块,用于从预设的模型模板数据库中获取所述数量的模型模板。
在本发明的一种实施例中,所述确定模块203包括:
第一确定子模块,用于确定每一所述模型模板与其他任一模型模板的中心点在水平方向和垂直方向的距离,以及水平长度之和及垂直宽度之和;
第二确定子模块,用于当一模型模板与一其他模型模板两者的中心点在水平方向的距离小于所述两者的所述水平长度之和的一半,或者,当所述两者的中心点在垂直方向的距离小于所述两者的所述垂直宽度之和的一半,则确定所述两者之间存在重叠。
在本发明的一种实施例中,所述移动模块204包括:
偏差方向确定子模块,用于当存在模型模板与其他模型模板存在重叠,则根据重叠的两个模型模板的位置确定所述两个模型模板中第一模型模板相对于所述两个模型模板中第二模型模板的偏差方向;
第一移动子模块,用于控制所述第一模型模板在所述偏差方向移动预设距离,或者控制所述第二模型模板在所述偏差方向的反方向移动预设距离。
在本发明的一种实施例中,所述移动模块204包括:
第三确定子模块,用于当目标模型模板与其他模型模板存在重叠时,则根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离;
第二移动子模块,用于根据所述待移动的方向和距离移动所述目标模型模板。
在本发明的一种实施例中,所述偏差方向包括水平偏差方向和垂直偏差方向。
在本发明的一种实施例中,所述预设的模型模板数据库中的模型模板包括基础模型模板及演变模型模板,所述演变模型模板为对对应的基础模型模板进行预设角度的旋转后得到的模型模板。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行本发明实施例所述的方法。
本发明实施例还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行本发明实施例所述的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种游戏中模型摆放的方法和一种游戏中模型摆放的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种游戏中模型摆放的方法,其特征在于,包括:
从预设的模型模板数据库中获取至少一个模型模板,所述模型模板包含至少一个装饰品模型,所述模型模板中包含至少一个预搭配的装饰品模型的尺寸信息以及位置信息;
将获取的模型模板放入预设的摆放区域;
确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;
当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;
根据所述位置信息,将所述摆放区域中的模型模板对应的装饰品模型放入所述摆放区域中;
所述将获取的模型模板放入预设的摆放区域,包括:
根据所述尺寸信息,过滤大于所述摆放区域的尺寸的所述模型模板;
所述从预设的模型模板数据库中获取至少一个模型模板,包括:
根据所述摆放区域的面积及所述模型模板数据库中模型模板的平均面积,以及预设填充度参数,确定待获取的模型模板的目标数量;所述预设填充度参数的取值范围在0~1之间,所述目标数量为所述面积除以所述平均面积再乘以所述预设填充度参数后取整;
从预设的模型模板数据库中获取所述数量的模型模板。
2.如权利要求1所述的方法,其特征在于,还包括:
确定是否存在摆放位置超出所述摆放区域的边缘的模型模板;
若是,则删除摆放位置超出所述摆放区域的边缘的模型模板。
3.如权利要求1所述的方法,其特征在于,所述确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠,包括:
确定每一所述模型模板与其他任一模型模板的中心点在水平方向和垂直方向的距离,以及水平长度之和及垂直宽度之和;
当一模型模板与一其他模型模板两者的中心点在水平方向的距离小于所述两者的所述水平长度之和的一半,或者,当所述两者的中心点在垂直方向的距离小于所述两者的所述垂直宽度之和的一半,则确定所述两者之间存在重叠。
4.如权利要求1所述的方法,其特征在于,所述当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,包括:
当存在模型模板与其他模型模板存在重叠,则根据重叠的两个模型模板的位置确定所述两个模型模板中第一模型模板相对于所述两个模型模板中第二模型模板的偏差方向;
控制所述第一模型模板在所述偏差方向移动预设距离,或者控制所述第二模型模板在所述偏差方向的反方向移动预设距离。
5.如权利要求1所述的方法,其特征在于,所述当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,包括:
当目标模型模板与其他模型模板存在重叠时,则根据与所述目标模型模板重叠的所有模型模板的位置确定所述目标模型模板待移动的方向和距离;
根据所述待移动的方向和距离移动所述目标模型模板。
6.如权利要求4所述的方法,其特征在于,所述偏差方向包括水平偏差方向和垂直偏差方向。
7.如权利要求1至6任一项所述的方法,其特征在于,所述预设的模型模板数据库中的模型模板包括基础模型模板及演变模型模板,所述演变模型模板为对对应的基础模型模板进行预设角度的旋转后得到的模型模板。
8.一种游戏中模型摆放的装置,其特征在于,所述装置包括:
获取模块,用于从预设的模型模板数据库中获取至少一个模型模板,所述模型模板包含至少一个装饰品模型,所述模型模板中包含至少一个预搭配的装饰品模型的尺寸信息以及位置信息;
摆放模块,用于将获取的所述模型模板放入预设的摆放区域;
确定模块,用于确定所述摆放区域中每一所述模型模板是否与其他模型模板存在重叠;
移动模块,用于当存在模型模板与其他模型模板存在重叠时,移动存在重叠的模型模板,直至每一模型模板与其他模型模板不存在重叠;
加入模块,用于根据所述位置信息,将所述摆放区域中的模型模板对应的装饰品模型放入所述摆放区域中;
所述将获取的模型模板放入预设的摆放区域,包括:
根据所述尺寸信息,过滤大于所述摆放区域的尺寸的所述模型模板;
所述获取模块包括:
数量确定子模块,用于根据所述摆放区域的面积及所述模型模板数据库中模型模板的平均面积,以及预设填充度参数,确定待获取的模型模板的目标数量;所述预设填充度参数的取值范围在0~1之间,所述目标数量为所述面积除以所述平均面积再乘以所述预设填充度参数后取整;
获取子模块,用于从预设的模型模板数据库中获取所述数量的模型模板。
9.一种电子设备,其特征在于,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至7任一项中所述的方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的方法。
CN201910245757.XA 2019-03-28 2019-03-28 一种游戏中模型摆放的方法和装置 Active CN109920023B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910245757.XA CN109920023B (zh) 2019-03-28 2019-03-28 一种游戏中模型摆放的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910245757.XA CN109920023B (zh) 2019-03-28 2019-03-28 一种游戏中模型摆放的方法和装置

Publications (2)

Publication Number Publication Date
CN109920023A CN109920023A (zh) 2019-06-21
CN109920023B true CN109920023B (zh) 2024-01-26

Family

ID=66967562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910245757.XA Active CN109920023B (zh) 2019-03-28 2019-03-28 一种游戏中模型摆放的方法和装置

Country Status (1)

Country Link
CN (1) CN109920023B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681826A (zh) * 2011-03-10 2012-09-19 腾讯科技(深圳)有限公司 动态调整桌面布局的方法及系统
CN105045776A (zh) * 2015-09-07 2015-11-11 武汉大学 一种页面自动排版方法
CN106681586A (zh) * 2016-12-21 2017-05-17 广东欧珀移动通信有限公司 布局位置调整方法及装置
CN107464269A (zh) * 2016-06-02 2017-12-12 阿里巴巴集团控股有限公司 搭配效果图的生成方法、装置及系统
CN108156503A (zh) * 2017-12-14 2018-06-12 北京奇艺世纪科技有限公司 一种生成礼物的方法及装置
CN108744520A (zh) * 2018-06-05 2018-11-06 网易(杭州)网络有限公司 确定游戏模型摆放位置的方法、装置和电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681826A (zh) * 2011-03-10 2012-09-19 腾讯科技(深圳)有限公司 动态调整桌面布局的方法及系统
CN105045776A (zh) * 2015-09-07 2015-11-11 武汉大学 一种页面自动排版方法
CN107464269A (zh) * 2016-06-02 2017-12-12 阿里巴巴集团控股有限公司 搭配效果图的生成方法、装置及系统
CN106681586A (zh) * 2016-12-21 2017-05-17 广东欧珀移动通信有限公司 布局位置调整方法及装置
CN108156503A (zh) * 2017-12-14 2018-06-12 北京奇艺世纪科技有限公司 一种生成礼物的方法及装置
CN108744520A (zh) * 2018-06-05 2018-11-06 网易(杭州)网络有限公司 确定游戏模型摆放位置的方法、装置和电子设备

Also Published As

Publication number Publication date
CN109920023A (zh) 2019-06-21

Similar Documents

Publication Publication Date Title
CN111177814B (zh) 一种基于dem数据的变电站工程三维建模方法和系统
US11069130B2 (en) Generating three-dimensional virtual scene
CN108057245B (zh) 地图的生成方法和装置、存储介质及终端
US20140149926A1 (en) Apparatus, method and computer readable recording medium for arranging a plurality of items automatically in a canvas
CN111540024A (zh) 一种模型渲染的方法及装置、电子设备、存储介质
US8970622B2 (en) System and method for placing objects across a surface of a graphics object
CN112184895A (zh) 仿真场景建模及渲染方法、装置和设备
CN106447671A (zh) 一种根据指定面积的矢量多边形自动分割方法
CN111199577A (zh) 一种房屋虚拟装修方法
CN109499067B (zh) 一种地形纹理的绘制方法及装置、电子设备、存储介质
CN113761622A (zh) 一种参数化城市建模方法、装置、存储介质及终端设备
CN105354878A (zh) 一种电子地图数据的制作方法及装置
CN116246012A (zh) 一种虚拟建筑模型的生成方法、装置、以及电子设备
CN110046623B (zh) 一种图像特征点提取方法和相机
CN109920023B (zh) 一种游戏中模型摆放的方法和装置
CN114186315A (zh) 生成建筑简模的方法、装置、计算机设备和可读存储介质
CN117152379B (zh) 一种建筑物外观模型自动化构建方法及装置
US9639992B2 (en) Methods and systems for multilevel editing of subdivided polygonal data
CN108744520A (zh) 确定游戏模型摆放位置的方法、装置和电子设备
CN110321184B (zh) 场景地图绘制方法及计算机存储介质
CN111524231A (zh) 一种虚拟地形的处理方法及装置、电子设备、存储介质
CN105635807A (zh) 一种视频编辑方法和装置
CN110189393A (zh) 一种形状词云的生成方法和装置
US9292970B2 (en) Systems and methods of retopologizing graphical data
CN113051642B (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
GR01 Patent grant
GR01 Patent grant