基于虚拟环境的物体构建方法、装置及可读存储介质与流程

文档序号:17820836发布日期:2019-06-05 22:13阅读:170来源:国知局
基于虚拟环境的物体构建方法、装置及可读存储介质与流程

本申请实施例涉及虚拟环境领域,特别涉及一种基于虚拟环境的物体构建方法、装置及可读存储介质。



背景技术:

沙盒游戏是一种由玩家利用游戏中提供的体素块制造原创物体,并与制造的原创物体进行互动的游戏模式,可选地,沙盒游戏中提供的体素块可以是通过材料分类的体素块,也可以是通过颜色分类的体素块,如:沙盒游戏中提供煤炭体素块、钻石体素块、砖头体素块等,或提供红色体素块、绿色体素块、紫色体素块等。

通常,玩家采用通过颜色分类的体素块在沙盒游戏环境中搭建装饰物、广告牌等色彩较为丰富的场景。以搭建装饰物为例,玩家首先确定需要搭建的装饰物的整体样式,并根据该整体样式将不同颜色的体素块在该样式的对应位置进行堆积,堆积后得到该装饰物。

然而,通过上述方式在沙盒游戏中制造原创物体时,针对图案较为复杂的物体,通常对应有较多颜色,无法准确对应到与该颜色对应的体素块,原创物体的搭建失败率较高。



技术实现要素:

本申请实施例提供了一种基于虚拟环境的物体构建方法、装置及可读存储介质,可以解决针对图案中的不同颜色,无法准确对应到与该颜色对应的体素块,原创物体的搭建失败率较高的问题。所述技术方案如下:

一方面,提供了一种基于虚拟环境的物体构建方法,所述方法包括:

显示环境界面,所述环境界面中包括所述虚拟环境对应的画面;

接收对所述虚拟环境的区域选定操作,所述区域选定操作用于在所述虚拟环境中对待构建的目标物体的构建区域进行确定;

接收图片输入操作,所述图片输入操作用于对样式图片进行输入,所述样式图片用于对待构建的所述目标物体的样式进行确定;

根据所述区域选定操作和所述图片输入操作在所述构建区域中显示所述目标物体,所述目标物体是由与所述样式图片对应颜色的体素块在所述构建区域中进行填充得到的。

另一方面,提供了一种基于虚拟环境的物体构建装置,所述装置包括:

显示模块,用于显示环境界面,所述环境界面中包括所述虚拟环境对应的画面;

接收模块,用于接收对所述虚拟环境的区域选定操作,所述区域选定操作用于在所述虚拟环境中对待构建的目标物体的构建区域进行确定;

所述接收模块,还用于接收图片输入操作,所述图片输入操作用于对样式图片进行输入,所述样式图片用于对待构建的所述目标物体的样式进行确定;

所述显示模块,还用于根据所述区域选定操作和所述图片输入操作在所述构建区域中显示所述目标物体,所述目标物体是由与所述样式图片对应颜色的体素块在所述构建区域中进行填充得到的。

另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中提供的基于虚拟环境的物体构建方法。

另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中提供的基于虚拟环境的物体构建方法。

另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上述本申请实施例中提供的基于虚拟环境的物体构建方法。

本申请实施例提供的技术方案带来的有益效果至少包括:

通过在虚拟环境中选择构建区域以及输入图片,在虚拟环境中向构建区域中填充体素块生成目标物体,且该目标物体是由于样式图片对应颜色的体素块在构建区域中填充得到的,避免了玩家手动对目标物体进行构建时,无法准确把控体素块的颜色而导致物体构建失败的问题,且通过本实施例提供的方法进行构建,提高了物体的构建效率,以及物体构建的准确率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一个示例性实施例提供的沙盒游戏的虚拟环境以及体素块的示意图;

图2是本申请一个示例性实施例提供的基于虚拟环境的物体构建方法的流程图;

图3是基于图2示出的实施例提供的构建区域的设置方法的界面示意图;

图4是基于图2示出的实施例提供的另一个构建区域的设置方法的界面示意图;

图5是本申请另一个示例性实施例提供的基于虚拟环境的物体构建方法的流程图;

图6是基于图5示出的实施例提供的rgb平方法计算色差的颜色模型示意图;

图7是基于图5示出的实施例提供的cielab76方法计算色差的颜色模型示意图;

图8是基于图5示出的实施例提供的cielab94方法计算色差的颜色模型示意图;

图9是基于图5示出的实施例提供的ciede2000方法计算色差的颜色模型示意图;

图10是本申请另一个示例性实施例提供的基于虚拟环境的物体构建方法的流程图;

图11是本申请另一个示例性实施例提供的基于虚拟环境的物体构建方法的流程图;

图12是本申请一个示例性实施例提供的基于虚拟环境的物体构建装置的结构框图;

图13是本申请另一个示例性实施例提供的基于虚拟环境的物体构建装置的结构框图;

图14是本申请一个示例性实施例提供的终端的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

首先,对本申请实施例中涉及的名词进行简单介绍:

沙盒游戏:是一种由玩家利用游戏中提供的体素块制造原创物体,并与制造的原创物体进行互动的游戏模式。通常,沙盒游戏中交互性较强、自由度较高,玩家可以根据创意在游戏的虚拟环境中通过体素块任意进行搭建、堆砌。可选地,沙盒游戏中通常不会设置主线剧情,玩家在游戏的虚拟环境中进行自由走动,而不需要根据剧情的发展完成对应的任务。

体素块:是一种在沙盒游戏中提供的用于在虚拟环境中对虚拟物体进行构建的材料块,可选地,该体素块可以是通过材料类型分类的,也可以是通过颜色分类的,还可以既通过材料类型分类又通过颜色分类,示意性的,对三种情况分别进行举例说明,1、沙盒游戏中提供煤炭体素块、钻石体素块、砖头体素块等;2、沙盒游戏中提供红色体素块、绿色体素块、紫色体素块等;3、沙盒游戏中提供红色砖块、绿色砖块、紫色砖块等。可选地,通过材料类型分类的体素块可以加工为建筑物、家具等用品的制作材料,如:通过熔炼沙子体素块得到玻璃,作为建筑物的窗户。可选地,装饰物、广告牌等色彩较丰富的物体可以采用通过颜色分类的体素块进行构建。可选地,体素块的大小可以是固定的,针对通过材料类型分类的体素块,可以根据材料类型的不同,确定体素块的大小;针对通过颜色分类的体素块,可以任意颜色的体素块的大小相同,且每种颜色对应有多种大小的体素块,如:小型白色体素块,中型白色体素块以及大型白色体素块。可选地,体素块的形状可以是统一的,如:长方体、正方体等,也可以是多种样式的,如图1所示,在环境界面100中包括虚拟环境对应的画面,该虚拟环境中包括虚拟人物110以及玩家搭建的物体120,该物体120是通过体素库中的体素块进行搭建的,其中,体素库中的部分体素块的形状如体素块显示区域130所示,该体素块显示区域130中包括绿色方形体素块131、棕色方形体素块132、棕色三角体素块133、黑色方形体素块134以及灰色阶梯体素块135,其中,上述体素块显示为乐高块的形状。

可选地,该体素块可以是玩家在虚拟环境中获取的,也可以是应用程序中本身提供的,示意性的,煤炭体素块、钻石体素块等需要玩家通过在虚拟环境中通过开采获得,而由颜色分类的普通体素块是游戏本身提供的。

其次,本申请实施例提供的基于虚拟环境的物体构建方法的应用场景进行说明,本申请提供的基于虚拟环境的物体构建方法的应用场景至少包括如下应用场景:

在沙盒游戏中对目标物体进行构建时,玩家通过在沙盒游戏的虚拟环境中选择构建区域以及上传样式图片,在构建区域中自动根据样式图片填充对应颜色的体素块,生成目标物体。

可选地,上述举例中以沙盒游戏为例进行说明,该方法还可以应用于任意提供虚拟环境以及体素块的应用程序中,本申请实施例对此不加以限定。

结合上述名词简介以及应用场景,对本申请实施例提供的基于虚拟环境的物体构建方法进行说明,该方法可以应用于终端中,也可以由终端和服务器结合实现,如图2所示,该方法包括:

步骤201,显示环境界面。

可选地,该环境界面中包括虚拟环境对应的画面。

可选地,该方法可以应用于沙盒游戏中,该沙盒游戏中提供有虚拟环境,该虚拟环境中包括虚拟对象,玩家可以控制虚拟对象在虚拟环境中进行移动、体素块搭建等操作。可选地,该环境界面中还显示有当前可以使用的体素块。

步骤202,接收对虚拟环境的区域选定操作,该区域选定操作用于在虚拟环境中对待构建的目标物体的构建区域进行确定。

可选地,该构建区域为虚拟环境中一块三维立体区域,可选地,该构建区域可以是长方体区域,也可以是正方体区域。可选地,该构建区域的形状根据该区域选定操作所选定的区域为准。

可选地,该区域选定操作可以是针对虚拟环境中的空闲区域进行设置的操作,也可以是针对虚拟环境中已有物体的区域进行的操作。可选地,当该区域选定操作是针对已有物体的区域进行的操作时,当向该构建区域进行填充时,采用当前待填充的体素块替换已有物体所在位置的体素块。

可选地,该区域选定操作的操作方式包括如下方式中的任意一种:

第一,接收在环境界面上的第一拖动操作,该第一拖动操作用于在虚拟环境中对构建区域的两组侧边进行确定;接收在环境界面上的第二拖动操作,该第二拖动操作用于对构建区域的第三组侧边进行确定;将三组侧边所框出的区域作为构建区域。

可选地,接收第一拖动操作和第二拖动操作之前,还需要在环境界面中选择构建区域选择控件,将当前虚拟环境的游戏模式调整为构建区域选择模式。

可选地,该第一拖动操作通过拖动生成两组侧边之间的对角线从而对该构建区域的两组侧边进行确定,可选地,该根据第一拖动操作确定的两组侧边构建得到平面,而该第二拖动操作用于在该平面的基础上确定该平面在垂直方向上的高度。可选地,上述构建区域的三组侧边中,每条侧边的侧边长度为单个体素块(形状为正方体)的边长的整数倍。可选地,侧边的长度可以以体素块的数量为测量单位。

可选地,根据该第一拖动操作的起始位置以及终止位置确定该第一拖动操作所确定的两组侧边的位置方向,如:当第一拖动操作的起始位置和终止位置都位于地面时,该第一拖动操作确定的两组侧边的位置都位于地面,则该两组侧边所确定的平面与地面平行;当第一拖动操作的起始位置位于空中,终止位置位于地面时,该第一拖动操作确定的两组侧边所组成的平面可以是垂直于地面的平面。

示意性的,请参考图3,在环境界面300中包括地面区域310和天空区域320,接收作用在地面区域310上的第一拖动操作,该第一拖动操作的启示位置311和终止位置312都位于地面区域310中,则生成地面区域310上的平面330,可选地,该平面330的高度默认为一个体素块的高度;接收在环境界面300中的第二拖动操作,该第二拖动操作的拖动方向向上,则根据该第二拖动操作生成构建区域340,该构建区域340在平面330的基础上增加了高度。

第二,接收在环境界面中的选择操作,该选择操作用于对构建区域在环境界面中的位置进行选择;接收侧边长度输入操作,可选地,该侧边长度输入操作是以数值的形式对侧边长度进行设置,可选地,该侧边长度输入操作输入的数值是以体素块的边长为测量单位的数值,如:侧边长度输入操作输入的数值为(50,10,40),则,即该构建区域的三组侧边分别为50个体素块的长度、10个体素块的长度以及40个体素块的长度。可选地,根据该侧边长度输入操作中输入的数值,以及虚拟对象在虚拟环境中所面对的方向确定构建区域,示意性的,第一个数值为构建区域在垂直方向的长度,第二个数值为构建区域在虚拟对象所面对方向的厚度,第三个数值为构建区域在水平方向的宽度。

可选地,上述选择操作用于对构建区域在第一环境中的位置进行选择,该选择操作所选择的位置位于地面,或,该选择操作所选择的位置位于其他物体的平面上,该选择操作选择的位置为构建区域在平面上的中心位置。

示意性的,请参考图4,在环境界面400中包括地面410,接收在该地面410上的选择操作后,确定构建区域在该地面410上的中心点411,显示侧边长度输入框420后,用户在该侧边长度输入框420中输入侧边长度分别为(50,10,40),则生成的构建区域为高边421为50个体素块长度、长边422为40个体素块长度以及宽边423为10个体素块长度的长方体区域。

可选地,当该区域选定操作所选定的构建区域较小时,可以在环境界面中提示用户该区域较小不利于生成图案,示意性的,当该区域选定操作所选定的构建区域的最长边的长度为三块小型体素块的长度时,该构建区域不利于生成较为复杂的图案,则在环境界面中显示提示内容“当前构建区域较小,不利于构建复杂图案”。

步骤203,接收图片输入操作。

可选地,该图片输入操作用于对样式图片进行输入,该样式图片用于对待构建的目标物体的样式进行确定。

可选地,该图片输入操作包括如下方式中的至少一种:

第一,接收对相机控件的点击操作,根据该点击操作显示相机拍摄界面;接收拍摄操作,根据该拍摄操作确定样式图片;接收确定操作,根据该确定操作对拍摄得到的样式图片进行输入;

第二,接收相册选择操作,根据相册选择操作打开终端的本地相册;接收照片选择操作,该照片选择操作用于在本地相册中选择作为样式图片的照片;接收确定操作,根据该确定操作将被选择的照片作为样式图片进行输入;

第三,接收画板选择操作,根据画板选择操作显示画板;接收绘制操作,该绘制操作用于在画板中绘制图案;接收确定操作,根据该确定操作将绘制得到的图案作为样式图片进行输入。

可选地,该样式图片即为生成的目标物体对应的样式。可选地,由于目标物体的样式为体素块构建的,故该目标物体的样式与样式图片相比轮廓较为模糊。

步骤204,根据区域选定操作和图片输入操作在构建区域中显示目标物体。

可选地,该目标物体是由样式图片对应颜色的体素块在构建区域中填充得到的。

可选地,该样式图片与构建区域中的一组平面对应,也即,该一组平面用于显示该样式图片,该一组平面可以是用户选择的,也可以是根据构建区域的边长自动确定的。

可选地,向构建区域中包括至少两个体素子区域,每个体素子区域用于通过体素块进行填充,可选地,每个体素子区域用于填充一个体素块。可选地,向构建区域填充体素块时,需要确定每个体素子区域所填充的体素块的颜色。

可选地,确定每个体素子区域所填充的体素块的颜色时,需要先确定构建区域中显示样式图片的平面与样式图片的对应关系,也即确定每个体素子区域在样式图片中对应的像素点。

可选地,根据构建区域中每个体素子区域对样式图片的像素点进行遍历,通过遍历得到每个像素子区域填充的与样式图片对应颜色的体素块进行填充,得到构建区域中的目标物体。

可选地,每个体素子区域在样式图片中对应的像素点可以是多个,当多个像素点的颜色不一致时,将占比较大的像素点的颜色作为该体素子区域对应的颜色,或,将该体素子区域对应的所有像素点的平均颜色作为体素子区域对应的颜色,其中,平均颜色通过每个像素点的rgb值进行计算。

可选地,该步骤204可以由终端实现,也可以由终端将构建区域以及样式图片发送至服务器,由服务器构建目标物体后将目标物体的构建结果发送至终端进行显示。

综上所述,本实施例提供的基于虚拟环境的物体构建方法,通过在虚拟环境中选择构建区域以及输入图片,在虚拟环境中向构建区域中填充体素块生成目标物体,且该目标物体是由于样式图片对应颜色的体素块在构建区域中填充得到的,避免了玩家手动对目标物体进行构建时,无法准确把控体素块的颜色而导致物体构建失败的问题,且通过本实施例提供的方法进行构建,提高了物体的构建效率,以及物体构建的准确率。

在一个可选的实施例中,确定样式图片中与体素子区域对应的颜色后,还需要确定与该颜色对应的体素块,图5是本申请另一个示例性实施例提供的基于虚拟环境的物体构建方法的流程图,该方法可以实现在终端中,也可以由终端和服务器结合实现,如图5所示,该方法包括:

步骤501,显示环境界面。

可选地,该环境界面中包括虚拟环境对应的画面。

可选地,该方法可以应用于沙盒游戏中,该沙盒游戏中提供有虚拟环境,该虚拟环境中包括虚拟对象,玩家可以控制虚拟对象在虚拟环境中进行移动、体素块搭建等操作。可选地,该环境界面中还显示有当前可以使用的体素块。

步骤502,接收对虚拟环境的区域选定操作,该区域选定操作用于在虚拟环境中对待构建的目标物体的构建区域进行确定。

可选地,该构建区域为虚拟环境中一块三维立体区域,可选地,该构建区域可以是长方体区域,也可以是正方体区域。

可选地,该区域选定操作可以是针对虚拟环境中的空闲区域进行设置的操作,也可以是针对虚拟环境中已有物体的区域进行的操作。可选地,当该区域选定操作是针对已有物体的区域进行的操作时,当向该构建区域进行填充时,采用当前待填充的体素块替换已有物体所在位置的体素块。

可选地,该区域选定操作的操作方式包括如下方式中的任意一种:

第一,接收在环境界面上的第一拖动操作,该第一拖动操作用于在虚拟环境中对构建区域的两组侧边进行确定;接收在环境界面上的第二拖动操作,该第二拖动操作用于对构建区域的第三组侧边进行确定;将三组侧边所框出的区域作为构建区域。

第二,接收在环境界面中的选择操作,该选择操作用于对构建区域在环境界面中的位置进行选择;接收侧边长度输入操作。可选地,该侧边长度输入操作是以数值的形式对侧边长度进行设置。

步骤503,接收图片输入操作。

可选地,该图片输入操作用于对样式图片进行输入,该样式图片用于对待构建的目标物体的样式进行确定。

步骤504,根据构建区域中的每个体素子区域对样式图片的像素点进行遍历。

可选地,在对样式图片的像素点进行遍历前,首先需要根据构建区域的区域尺寸对样式图片的图片大小进行调整,根据构建区域中每个体素子区域对调整后的样式图片的像素点进行遍历。

可选地,将构建区域中用于显示样式图片的平面与样式图片进行对应匹配,匹配后对样式图片的大小根据该平面进行调整,并通过调整后的样式图片的像素点对每个体素子区域填充的体素块的颜色进行确定。

步骤505,通过遍历得到每个体素子区域填充的与样式图片对应颜色的体素块进行填充,得到构建区域中的目标物体。

可选地,通过遍历确定样式图片中与体素子区域对应的第一颜色;并将第一颜色与预设颜色表中的颜色进行色差计算,得到预设颜色表中色差计算结果最小的第二颜色;在体素子区域中填充第二颜色体素块,得到构建区域中的目标物体。

可选地,该预设颜色表为应用程序中提供的体素块的所有颜色的颜色表,通过计算第一颜色与预设颜色表中的颜色的色差,确定该预设颜色表中与该第一颜色色差最小的颜色,并将该颜色的体素块作为填充该第一颜色对应的体素子区域的体素块。

可选地,确定样式图片中与体素子区域对应的第一颜色时,首先在样式图片中确定与体素子区域对应的像素点,并根据像素点确定第一颜色,其中,每个体素子区域对应的像素点的数量可以是多个,当多个像素点的颜色不一致时,将占比较大的像素点的颜色作为该体素子区域对应的颜色,或,将该体素子区域对应的所有像素点的平均颜色作为体素子区域对应的颜色,其中,平均颜色通过每个像素点的rgb值进行计算。

可选地,计算第一颜色与预设颜色表中的颜色的色差时,可以通过欧氏距离计算法计算两个颜色之间的颜色距离,颜色距离越大,两个颜色之间的色差越大,反之,两个颜色越接近颜色距离越小。在计算颜色距离时,在rgb控件内,可以通过如下欧氏距离计算法提供的公式一计算得到两个颜色c1、c2之间的距离,其中,c1为上述第一颜色,c2为预设颜色表中的颜色:

公式一:

其中,c1,r表示第一颜色c1的红色数值,c2,r表示颜色c2的红色数值,c1,g表示第一颜色c1的绿色数值,c2,g表示颜色c2的绿色数值,c1,b表示第一颜色c1的蓝色数值,c2,b表示颜色c2的蓝色数值。

将第一颜色c1和预设颜色表中的颜色c2的rgb值代入上述公式一后,得到第一颜色c1和预设颜色表中的颜色c2的色差。

可选地,计算色差的方式除上述欧氏距离计算法外,还可以通过rgb平方法、cielab色差计算公式(如:cielab76、cielab94)、ciede2000进行计算,本申请实施例对色差计算方式不做限定。

示意性的,通过rgb平方法、cielab76、cielab94以及ciede2000对色差进行计算的过程中,颜色模型如图6至图9所示,其中,图6对应rgb平方法,图7对应cielab76、图8对应cielab94以及图9对应ciede2000。

综上所述,本实施例提供的基于虚拟环境的物体构建方法,通过在虚拟环境中选择构建区域以及输入图片,在虚拟环境中向构建区域中填充体素块生成目标物体,且该目标物体是由于样式图片对应颜色的体素块在构建区域中填充得到的,避免了玩家手动对目标物体进行构建时,无法准确把控体素块的颜色而导致物体构建失败的问题,且通过本实施例提供的方法进行构建,提高了物体的构建效率,以及物体构建的准确率。

本实施例提供的方法,通过对样式图片中与体素子区域对应的第一颜色与预设颜色表中的颜色进行色差计算,确定与该第一颜色对应色差最小的第二颜色,并将该第二颜色的体素块作为填充该体素子区域的体素块,提高了颜色确定的准确度。

在一个可选的实施例中,根据构建区域还需要对样式图片的大小进行调整,

图10是本申请另一个示例性实施例提供的基于虚拟环境的物体构建方法的流程图,该方法可以实现在终端中,也可以由终端和服务器结合实现,如图10所示,该方法包括:

步骤1001,显示环境界面。

可选地,该环境界面中包括虚拟环境对应的画面。

可选地,该方法可以应用于沙盒游戏中,该沙盒游戏中提供有虚拟环境,该虚拟环境中包括虚拟对象,玩家可以控制虚拟对象在虚拟环境中进行移动、体素块搭建等操作。可选地,该环境界面中还显示有当前可以使用的体素块。

步骤1002,接收对虚拟环境的区域选定操作,该区域选定操作用于在虚拟环境中对待构建的目标物体的构建区域进行确定。

可选地,该构建区域为虚拟环境中一块三维立体区域,可选地,该构建区域可以是长方体区域,也可以是正方体区域。

可选地,该区域选定操作可以是针对虚拟环境中的空闲区域进行设置的操作,也可以是针对虚拟环境中已有物体的区域进行的操作。可选地,当该区域选定操作是针对已有物体的区域进行的操作时,当向该构建区域进行填充时,采用当前待填充的体素块替换已有物体所在位置的体素块。

步骤1003,接收图片输入操作。

可选地,该图片输入操作用于对样式图片进行输入,该样式图片用于对待构建的目标物体的样式进行确定。

步骤1004,根据构建区域的区域尺寸对样式图片的图片大小进行调整。

可选地,该构建区域为虚拟环境中的三维区域,该三维区域包括长边、宽边以及高边三组侧边,在根据构建区域的区域尺寸对样式图片的图片大小进行调整之前,需要对与样式图片对应的构建区域的面进行确定,该确定方式包括如下方式中的任意一种:

第一,将构建区域的长边、宽边以及高边中最短的侧边长作为目标物体的厚度,根据长边宽边以及高边中其余两组侧边所构成的面的尺寸对样式图片的图片大小进行调整;

第二,接收厚度设置操作,该厚度设置操作用于在长边、宽边以及高边中设置作为目标物体厚度的侧边,根据长边宽边以及高边中其余两组侧边所构成的面的尺寸对样式图片的图片大小进行调整;

第三,该虚拟环境中包括虚拟对象,将虚拟对象在虚拟环境中面对的方向作为目标物体的厚度对应的方向,根据长边宽边以及高边中其余两组侧边所构成的面的尺寸对样式图片的图片大小进行调整。

可选地,在调整过程中,首先确定样式图片的侧边与构建区域中的长边、宽边以及高边中除厚度对应的侧边外其余两组侧边之间的对应关系,可选地,该对应关系可以是根据长度进行对应,即,其余两组侧边中较长的侧边对应样式图片中较长的侧边,其余两组侧边中较短的侧边对应样式图片中较短的侧边;也可以根据预设对应关系进行对应。

可选地,当样式图片的侧边与构建区域的侧边对应较长时,根据构建区域的侧边对样式图片的侧边进行压缩,当样式图片的侧边与构建区域的侧边对应较短时,根据构建区域的侧边对样式图片的侧边进行拉伸;或,当样式图片的侧边与构建区域的侧边对应较长时,根据构建区域的侧边对样式图片的侧边进行裁剪,当样式图片的侧边与构建区域的侧边对应较短时,根据构建区域的侧边对样式图片的侧边进行补全。其中,对样式图片的侧边进行裁剪时,可以对该侧边的两端分别进行裁剪,也可以对一边进行裁剪;对样式图片的侧边进行补全时,可以通过白色或透明体素块在侧边的两端进行补全,也可以通过白色或透明体素块在侧边的一端进行补全。

步骤1005,根据构建区域中每个体素子区域对调整后的样式图片的像素点进行遍历。

可选地,将构建区域中用于显示样式图片的平面与样式图片进行对应匹配,匹配后对样式图片的大小根据该平面进行调整,并通过调整后的样式图片的像素点对每个体素子区域填充的体素块的颜色进行确定。

步骤1006,通过遍历得到每个体素子区域填充的与样式图片对应颜色的体素块进行填充,得到构建区域中的目标物体。

可选地,在对构建区域进行填充的过程中,在该构建区域的厚度方向上的体素子区域填充同一颜色的体素块。

可选地,通过遍历确定样式图片中与体素子区域对应的第一颜色;并将第一颜色与预设颜色表中的颜色进行色差计算,得到预设颜色表中色差计算结果最小的第二颜色;在体素子区域中填充第二颜色体素块,得到构建区域中的目标物体。

可选地,该预设颜色表为应用程序中提供的体素块的所有颜色的颜色表,通过计算第一颜色与预设颜色表中的颜色的色差,确定该预设颜色表中与该第一颜色色差最小的颜色,并将该颜色的体素块作为填充该第一颜色对应的体素子区域的体素块。

可选地,计算色差的方式包括欧氏距离计算法、rgb平方法、cielab色差计算公式(如:cielab76、cielab94)、ciede2000中的至少一种,本申请实施例对色差计算方式不做限定。

可选地,针对每个体素子区域进行颜色确定并填充体素块后,得到该目标物体。

综上所述,本实施例提供的基于虚拟环境的物体构建方法,通过在虚拟环境中选择构建区域以及输入图片,在虚拟环境中向构建区域中填充体素块生成目标物体,且该目标物体是由于样式图片对应颜色的体素块在构建区域中填充得到的,避免了玩家手动对目标物体进行构建时,无法准确把控体素块的颜色而导致物体构建失败的问题,且通过本实施例提供的方法进行构建,提高了物体的构建效率,以及物体构建的准确率。

本实施例提供的方法,通过对样式图片中与体素子区域对应的第一颜色与预设颜色表中的颜色进行色差计算,确定与该第一颜色对应色差最小的第二颜色,并将该第二颜色的体素块作为填充该体素子区域的体素块,提高了颜色确定的准确度。

本实施例提供的方法,通过根据构建区域的区域尺寸对样式图片的图片大小进行调整,调整后的样式图片的尺寸与构建区域平面的尺寸一致,则该样式图片与构建区域可以更好的进行对应,体素子区域的颜色确定更准确。

图11是本申请一个示例性实施例提供的基于虚拟环境的物体构建方法的整体流程图,如图11所示,该方法包括:

步骤1101,通过相机拍摄样式图片。

可选地,在相机拍摄界面中接收拍摄操作,并根据该拍摄操作拍摄样式图片进行输入。

步骤1102,从相册中选择样式图片。

可选地,打开终端的本地相册并接收照片选择操作,该照片选择操作用于在本地相册中选择作为样式图片的照片。

步骤1103,接收构建区域设置操作。

可选地,该构建区域为虚拟环境中一块三维立体区域,该构建区域可以通过在界面中的拖动操作实现,也可以通过数值输入操作实现,具体实现方式已在步骤202中进行了详细说明,此处不再赘述。

步骤1104,根据构建区域对样式图片的图片大小进行调整。

可选地,首先确定构建区域中与样式图片对应的平面,并根据该平面的大小对样式图片的大小进行调整。具体调整方式在上述步骤1004中已进行了详细说明,此处不再赘述。

步骤1105,针对构建区域中的每个体素子区域,确定填充体素块的颜色。

可选地,针对构建区域中的体素子区域,首先对样式图片中的像素点进行遍历,并根据遍历得到的像素点颜色确定填充的体素块的颜色。

步骤1106,确定填充体素块的体素子区域的位置。

可选地,该体素子区域的位置是根据构建区域与样式图片的对应关系确定得到的。

步骤1107,向体素子区域填充体素块。

可选地,向体素子区域填充的体素块为上述根据样式图片的像素点确定得到的样色的体素块。

综上所述,本实施例提供的基于虚拟环境的物体构建方法,通过在虚拟环境中选择构建区域以及输入图片,在虚拟环境中向构建区域中填充体素块生成目标物体,且该目标物体是由于样式图片对应颜色的体素块在构建区域中填充得到的,避免了玩家手动对目标物体进行构建时,无法准确把控体素块的颜色而导致物体构建失败的问题,且通过本实施例提供的方法进行构建,提高了物体的构建效率,以及物体构建的准确率。

图12是本申请一个示例性实施例提供的基于虚拟环境的物体构建装置的结构框图,该装置可以设置在终端中,该装置包括:显示模块1210、接收模块1220;

显示模块1210,用于显示环境界面,所述环境界面中包括虚拟环境对应的画面;

接收模块1220,用于接收对所述虚拟环境的区域选定操作,所述区域选定操作用于在所述虚拟环境中对待构建的目标物体的构建区域进行确定;

所述接收模块1220,还用于接收图片输入操作,所述图片输入操作用于对样式图片进行输入,所述样式图片用于对待构建的所述目标物体的样式进行确定;

所述显示模块1210,还用于根据所述区域选定操作和所述图片输入操作在所述构建区域中显示所述目标物体,所述目标物体是由与所述样式图片对应颜色的体素块在所述构建区域中进行填充得到的。

在一个可选的实施例中,所述构建区域中包括至少两个体素子区域,每个体素子区域用于通过所述体素块进行填充;

如图13所示,该装置还包括:

构建模块1230,用于根据所述构建区域中的所述每个体素子区域对所述样式图片的像素点进行遍历;通过遍历得到所述每个体素子区域填充的与所述样式图片对应颜色的所述体素块进行填充,得到所述构建区域中的所述目标物体。

在一个可选的实施例中,所述构建模块1230,包括:

确定子模块1231,用于通过遍历确定所述样式图片中与所述体素子区域对应的第一颜色;

计算子模块1232,用于将所述第一颜色与预设颜色表中的颜色进行色差计算,得到所述预设颜色表中色差计算结果最小的第二颜色;

填充子模块1233,用于在所述体素子区域中填充所述第二颜色的体素块。

在一个可选的实施例中,所述构建模块1230,包括:

调整子模块1234,用于根据所述构建区域的区域尺寸对所述样式图片的图片大小进行调整;根据所述构建区域中的所述每个体素子区域对调整后的所述样式图片的像素点进行遍历。

在一个可选的实施例中,所述构建区域为所述虚拟环境中的三维区域,所述三维区域包括长边、宽边以及高边三组侧边;

所述调整子模块1234,还用于将所述长边、所述宽边以及所述高边中最短的侧边长作为所述目标物体的厚度;或,接收厚度设置操作,所述厚度设置操作用于在所述长边、所述宽边以及所述高边中设置作为所述目标物体的厚度的侧边;或,所述虚拟环境中包括虚拟对象,将所述虚拟对象在所述虚拟环境中面对的方向作为所述目标物体的厚度对应的方向;根据所述长边、所述宽边以及所述高边中其余两组侧边所构成的面的尺寸对所述样式图片的图片大小进行调整。

在一个可选的实施例中,所述调整子模块1234,还用于确定所述样式图片的侧边与所述构建区域中的所述长边、所述宽边以及所述高边中除所述厚度对应的侧边外的其余两组侧边之间的对应关系;

所述调整子模块1234,还用于当所述样式图片的侧边与所述构建区域的侧边对应较长时,根据所述构建区域的侧边对所述样式图片的侧边进行压缩;

所述调整子模块1234,还用于当所述样式图片的侧边与所述构建区域的侧边对应较短时,根据所述构建区域的侧边对所述样式图片的侧边进行拉伸。

在一个可选的实施例中,所述接收模块1220,还用于接收在所述环境界面上的第一拖动操作,所述第一拖动操作用于在所述虚拟环境中对所述构建区域的两组侧边进行确定;

所述接收模块1220,还用于接收在所述环境界面上的第二拖动操作,所述第二拖动操作用于对所述构建区域的第三组侧边进行确定;

所述接收模块1220,还用于将三组侧边所框出的区域作为所述构建区域。

综上所述,本实施例提供的基于虚拟环境的物体构建装置,通过在虚拟环境中选择构建区域以及输入图片,在虚拟环境中向构建区域中填充体素块生成目标物体,且该目标物体是由于样式图片对应颜色的体素块在构建区域中填充得到的,避免了玩家手动对目标物体进行构建时,无法准确把控体素块的颜色而导致物体构建失败的问题,且通过本实施例提供的方法进行构建,提高了物体的构建效率,以及物体构建的准确率。

需要说明的是:上述实施例提供的基于虚拟环境的物体构建装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于虚拟环境的物体构建装置与基于虚拟环境的物体构建方法的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图14示出了本发明一个示例性实施例提供的终端1400的结构框图。该终端1400可以是:智能手机、平板电脑、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1400还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端1400包括有:处理器1401和存储器1402。

处理器1401可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1401可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1401也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1401可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1401还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器1402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1401所执行以实现本申请中方法实施例提供的基于虚拟环境的物体构建方法。

在一些实施例中,终端1400还可选包括有:外围设备接口1403和至少一个外围设备。处理器1401、存储器1402和外围设备接口1403之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1403相连。具体地,外围设备包括:射频电路1404、触摸显示屏1405、摄像头1406、音频电路1407、定位组件1408和电源1409中的至少一种。

外围设备接口1403可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1401和存储器1402。在一些实施例中,处理器1401、存储器1402和外围设备接口1403被集成在同一芯片或电路板上;在一些其他实施例中,处理器1401、存储器1402和外围设备接口1403中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1404用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路1404通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1404将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1404包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1404可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路1404还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏1405用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1405是触摸显示屏时,显示屏1405还具有采集在显示屏1405的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1401进行处理。此时,显示屏1405还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1405可以为一个,设置终端1400的前面板;在另一些实施例中,显示屏1405可以为至少两个,分别设置在终端1400的不同表面或呈折叠设计;在再一些实施例中,显示屏1405可以是柔性显示屏,设置在终端1400的弯曲表面上或折叠面上。甚至,显示屏1405还可以设置成非矩形的不规则图形,也即异形屏。显示屏1405可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件1406用于采集图像或视频。可选地,摄像头组件1406包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1406还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1407可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1401进行处理,或者输入至射频电路1404以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1400的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1401或射频电路1404的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1407还可以包括耳机插孔。

定位组件1408用于定位终端1400的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件1408可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。

电源1409用于为终端1400中的各个组件进行供电。电源1409可以是交流电、直流电、一次性电池或可充电电池。当电源1409包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端1400还包括有一个或多个传感器1410。该一个或多个传感器1410包括但不限于:加速度传感器1411、陀螺仪传感器1412、压力传感器1413、指纹传感器1414、光学传感器1415以及接近传感器1416。

加速度传感器1411可以检测以终端1400建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1411可以用于检测重力加速度在三个坐标轴上的分量。处理器1401可以根据加速度传感器1411采集的重力加速度信号,控制触摸显示屏1405以横向视图或纵向视图进行用户界面的显示。加速度传感器1411还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1412可以检测终端1400的机体方向及转动角度,陀螺仪传感器1412可以与加速度传感器1411协同采集用户对终端1400的3d动作。处理器1401根据陀螺仪传感器1412采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1413可以设置在终端1400的侧边框和/或触摸显示屏1405的下层。当压力传感器1413设置在终端1400的侧边框时,可以检测用户对终端1400的握持信号,由处理器1401根据压力传感器1413采集的握持信号进行左右手识别或快捷操作。当压力传感器1413设置在触摸显示屏1405的下层时,由处理器1401根据用户对触摸显示屏1405的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器1414用于采集用户的指纹,由处理器1401根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1414根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1401授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1414可以被设置终端1400的正面、背面或侧面。当终端1400上设置有物理按键或厂商logo时,指纹传感器1414可以与物理按键或厂商logo集成在一起。

光学传感器1415用于采集环境光强度。在一个实施例中,处理器1401可以根据光学传感器1415采集的环境光强度,控制触摸显示屏1405的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1405的显示亮度;当环境光强度较低时,调低触摸显示屏1405的显示亮度。在另一个实施例中,处理器1401还可以根据光学传感器1415采集的环境光强度,动态调整摄像头组件1406的拍摄参数。

接近传感器1416,也称距离传感器,通常设置在终端1400的前面板。接近传感器1416用于采集用户与终端1400的正面之间的距离。在一个实施例中,当接近传感器1416检测到用户与终端1400的正面之间的距离逐渐变小时,由处理器1401控制触摸显示屏1405从亮屏状态切换为息屏状态;当接近传感器1416检测到用户与终端1400的正面之间的距离逐渐变大时,由处理器1401控制触摸显示屏1405从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图14中示出的结构并不构成对终端1400的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如图2、图5以及图10任一所述的基于虚拟环境的物体构建方法。

可选地,该计算机可读存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、固态硬盘(ssd,solidstatedrives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(reram,resistancerandomaccessmemory)和动态随机存取存储器(dram,dynamicrandomaccessmemory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1