游戏中纹理图像的处理方法及装置、电子设备、存储介质与流程

文档序号:18944646发布日期:2019-10-23 01:27阅读:212来源:国知局
游戏中纹理图像的处理方法及装置、电子设备、存储介质与流程

本申请涉及游戏领域,特别是涉及游戏中纹理图像的处理方法及装置、电子设备、存储介质。



背景技术:

在3d游戏场景或场景可视化中,通常存在大规模地形绘制,为了表现丰富的地形视觉效果,地形绘制通常采用纹理贴图。

然而,大规模地形需要有相同尺寸的大规模纹理贴图,受限于普通计算机的硬件,开发人员通常仅能使用有限尺寸的纹理进行纹理平铺,但这种方式生成的大规模纹理贴图的重复性太高,降低了视觉表现效果。



技术实现要素:

鉴于上述问题,提出了以便提供克服上述问题或者至少部分地解决上述问题的游戏中纹理图像的处理方法及装置、电子设备、存储介质,包括:

一种游戏中纹理图像的处理方法,所述方法包括:

获取游戏场景对应的第一纹理图像;

响应针对所述游戏场景的绘制请求,根据所述第一纹理图像进行随机偏移生成至少一取样纹理图像;

根据所述至少一取样纹理图像进行混合得到第三纹理图像,并进行绘制。

可选地,所述根据所述第一纹理图像进行随机偏移生成至少一取样纹理图像的步骤包括:

将所述第一纹理图像根据高斯分布生成第二纹理图像;

根据所述第二纹理图像进行随机偏移生成至少一取样纹理图像;

所述根据所述至少一取样纹理图像进行混合得到第三纹理图像的步骤,包括:

根据所述至少一取样纹理图像进行混合得到第四纹理图像;

根据第四纹理图像映射为所述第三纹理图像。

可选地,所述根据所述第二纹理图像进行随机偏移生成至少一取样纹理图像的步骤包括:

对所述第二纹理图像进行分块,得到至少一图像块;

分别对所述至少一图像块进行随机偏移,得到至少一取样纹理图像;

所述根据所述至少一取样纹理图像进行混合得到第四纹理图像的步骤包括:

在所述至少一取样纹理图像中,确定所述第二纹理图像中图像块对应的第二颜色值;其中,所述第二纹理图像中图像块具有第一颜色值;

对所述第二颜色值进行混合,得到第三颜色值;

采用所述第三颜色值替换所述第二纹理图像中图像块对应的第一颜色值,得到第四纹理图像。

可选地,所述对所述第二颜色值进行混合,得到第三颜色值的步骤包括:

针对所述第二纹理图像中像素点,确定所在的图像块,以及与所在的图像块中每个顶点对应的权重值;

采用所述权重值,对所述第二颜色值进行加权,得到第三颜色值。

可选地,还包括:

生成所述第二纹理图像与所述第一纹理图像对应的反映射函数;

所述根据第四纹理图像映射为所述第三纹理图像的步骤包括:

采用所述反映射函数,将所述第四纹理图像映射为第三纹理图像。

可选地,所述第三纹理图像与所述第一纹理图像对应的图像期望和方差相同。

可选地,所述第一纹理图像为所述游戏场景中地形对应的纹理图像。

一种游戏中纹理图像的处理装置,所述装置包括:

第一纹理图像获取模块,用于获取游戏场景对应的第一纹理图像;

取样纹理图像生成模块,用于响应针对所述游戏场景的绘制请求,根据所述第一纹理图像进行随机偏移生成至少一取样纹理图像;

第三纹理图像绘制模块,用于根据所述至少一取样纹理图像进行混合得到第三纹理图像,并进行绘制。

一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的游戏中纹理图像的处理方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的游戏中纹理图像的处理方法的步骤。

本申请实施例具有以下优点:

在本申请实施例中,通过获取游戏场景对应的第一纹理图像,响应针对游戏场景的绘制请求,根据第一纹理图像进行随机偏移生成至少一取样纹理图像,然后根据至少一取样纹理图像进行混合得到第三纹理图像,并进行绘制,实现了对游戏场景中纹理图像的优化,能够降低纹理重复性,且保持原始纹理特征,提升了纹理图像的视觉表现效果。

附图说明

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

图1是本申请一实施例提供的一种游戏中纹理图像的处理方法的步骤流程图;

图2是本申请一实施例提供的另一种游戏中纹理图像的处理方法的步骤流程图;

图3是本申请一实施例提供的一种游戏中纹理图像的处理装置的结构示意图。

具体实施方式

为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

参照图1,示出了本申请一实施例提供的一种游戏中纹理图像的处理方法的步骤流程图,具体可以包括如下步骤:

步骤101,获取游戏场景对应的第一纹理图像;

作为一示例,第一纹理图像可以为游戏场景中地形对应的纹理图像。

在游戏预处理的过程中,可以设置游戏场景对应的第一纹理图像,用于绘制游戏场景中地形,且第一纹理图像的尺寸小于待绘制地形的尺寸。

步骤102,响应针对所述游戏场景的绘制请求,根据所述第一纹理图像进行随机偏移生成至少一取样纹理图像;

由于第一纹理图像的尺寸小于待绘制地形的尺寸,若不断采用第一纹理图像进行地形绘制,重复性太高,则在游戏运行的过程中,可以响应于针对游戏场景的绘制请求,根据第一纹理图像进行随机偏移,如对第一纹理图像自身进行随机偏移,并在随机偏移后进行采样,得到至少一取样纹理图像。

步骤103,根据所述至少一取样纹理图像进行混合得到第三纹理图像,并进行绘制。

在获得至少一取样纹理图像后,可以根据至少一取样纹理图像进行混合,如对颜色值进行混合,进而得到第三纹理图像,并进行游戏场景的绘制。

在本申请实施例中,通过获取游戏场景对应的第一纹理图像,响应针对游戏场景的绘制请求,根据第一纹理图像进行随机偏移生成至少一取样纹理图像,然后根据至少一取样纹理图像进行混合得到第三纹理图像,并进行绘制,实现了对游戏场景中纹理图像的优化,能够降低纹理重复性,且保持原始纹理特征,提升了纹理图像的视觉表现效果。

参照图2,示出了本申请一实施例提供的另一种游戏中纹理图像的处理方法的步骤流程图,具体可以包括如下步骤:

步骤201,获取游戏场景对应的第一纹理图像;

步骤202,响应针对所述游戏场景的绘制请求,将所述第一纹理图像根据高斯分布生成第二纹理图像;

在获得第一纹理图像后,可以生成第一纹理图像对应的通道颜色直方图,然后采用标准高斯分布,映射为标准高斯分布纹理,得到第二纹理图像。

具体的,可以对第一纹理图像中每个颜色通道(rgb)分别执行映射,具体可以对单个颜色通道的像素颜色进行排序,生成通道颜色直方图。

在生成通道颜色直方图后,可以确定像素颜色在通道颜色直方图中的排序位置,然后依据排序位置进行映射,得到第二纹理图像。

实际上,通道颜色直方图到高斯分布需要计算累计分布函数cdf(x),累计分布函数可以记录在x点以下的概率分布累计和,具体如下:

相应的,从高斯分布到通道颜色直方图则需要采用累计分布函数的逆函数cdf-1(x),具体如下:

其中,erf为误差函数,可以设置μ=0.5(μ=0.5的高斯分布图像值在[0,1]区间),σ=1/6(σ=1/6保证八位图像浮点精度)。

步骤203,根据所述第二纹理图像进行随机偏移生成至少一取样纹理图像;

在获得第二纹理图像后,可以对第二纹理图像进行随机偏移,并在随机偏移后进行采样,得到至少一取样纹理图像。

在本申请一实施例中,步骤203可以包括如下子步骤:

子步骤11,对所述第二纹理图像进行分块,得到至少一图像块;

在具体实现中,可以对第二纹理图像进行分块,如进行三角形网格分块划分,然后可以得到至少一图像块。

子步骤12,分别对所述至少一图像块进行随机偏移,得到至少一取样纹理图像。

对于每个图像块,其可以具有第一顶点,可以对第一顶点进行随机偏移,得到第二顶点,进而确定第二顶点对应的取样纹理图像。

例如,图像块为三角形,则可以对图像块的三个第一顶点(v1,v2,v3)进行随机偏移,得到第二顶点(v4,v5,v6),进而确定取样纹理图像。

具体的,可以对第一顶点的顶点坐标进行hash操作,得到乱序值,然后采用乱序值的小数部分得到随机值,进行随机偏移。

步骤204,根据所述至少一取样纹理图像进行混合得到第四纹理图像;

在获得至少一取样纹理图像后,可以根据至少一取样纹理图像进行混合,如对颜色值进行混合,得到第四纹理图像。

在本申请一实施例中,步骤204可以包括如下子步骤:

子步骤21,在所述至少一取样纹理图像中,确定所述第二纹理图像中图像块对应的第二颜色值;其中,所述第二纹理图像中图像块具有第一颜色值;

在实际应用中,第二纹理图像中图像块可以具有第一颜色值,对于第二纹理图像中任一像素点(图像块中每个像素点具有第一颜色值),其都属于某一图像块,则在进行随机偏移后的取样纹理图像中,可以在取样纹理图像中确定该像素点对应的第二颜色值。

例如,第二纹理图像中图像块的三个第一顶点(v1,v2,v3),取样纹理图像中第二顶点(v4,v5,v6),对于图像块的像素点p,其原始坐标为uv,则该像素点p相对于三个第二顶点的采样坐标为(v4+(uv-v1),v5+(uv-v2),v6+(uv-v3)),在该三个采样坐标进行三次采样,获得三个第二颜色值。

子步骤22,对所述第二颜色值进行混合,得到第三颜色值;

在获得第二颜色值后,可以对第二颜色值进行混合,得到第三颜色值。

在本申请一实施例中,子步骤22可以包括如下子步骤:

子步骤221,针对所述第二纹理图像中像素点,确定所在的图像块,以及与所在的图像块中每个顶点对应的权重值;

对第二纹理图像中任一像素点,可以确定相对于图像块中第一顶点的权重值,如可以由像素点到第一顶点对边的垂线距离归一化求得。

子步骤222,采用所述权重值,对所述第二颜色值进行加权,得到第三颜色值。

在获得权重值后,可以对第二颜色值进行加权,得到第三颜色值。

具体的,可以采用一维线性随机混合,即采用权重值直接进行加权,但会降低高斯分布的方差,并不能保持原始输入图像的统计信息。

基于此,可以确定第一纹理图像对应的第一颜色分布期望,进而结合第一颜色分布期望和权重值,对第二颜色值进行加权,得到第三颜色值,以保持输入图像期望和方差,保持原始纹理特征。

例如,如上文中像素点p采样的第二颜色值为c1,c2,c3,输入的第一纹理图像的第一颜色分布期望为e(c),则第三颜色值c:

子步骤23,采用所述第三颜色值替换所述第二纹理图像中图像块对应的第一颜色值,得到第四纹理图像。

在获得第三颜色值后,可以在原始的第二纹理图像中,采用第三颜色值替换该像素点的第一颜色值,进而可以得到第四纹理图像。

在本申请一实施例中,第三纹理图像与第一纹理图像对应的图像期望和方差相同,保持了原始纹理特征。

步骤205,根据第四纹理图像映射为所述第三纹理图像,并进行绘制。

在获得第四纹理图像后,可以将第四纹理图像映射为第三纹理图像,然后可以对第三纹理图像进行绘制,得到游戏场景。

在本申请一实施例中,该方法还可以包括如下步骤:

生成所述第二纹理图像与所述第一纹理图像对应的反映射函数。

相应的,步骤205可以包括如下子步骤:

采用所述反映射函数,将所述第四纹理图像映射为第三纹理图像。

在将直方图映射为高斯分布的过程中,可以记录通道颜色直方图到高斯分布的第二纹理图像的映射关系,具体可以包括直方图到高斯分布的映射函数以及高斯分布到直方图的反映射函数。

在获得高斯分布的第四纹理图像后,可以采用记录的映射关系(反映射函数),将第四纹理图像映射为第三纹理图像。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。

参照图3,示出了本申请一实施例提供的一种游戏中纹理图像的处理装置的结构示意图,具体可以包括如下模块:

第一纹理图像获取模块301,用于获取游戏场景对应的第一纹理图像;

取样纹理图像生成模块302,用于响应针对所述游戏场景的绘制请求,根据所述第一纹理图像进行随机偏移生成至少一取样纹理图像;

第三纹理图像绘制模块303,用于根据所述至少一取样纹理图像进行混合得到第三纹理图像,并进行绘制。

在本申请一实施例中,所述取样纹理图像生成模块302包括:

第二纹理图像生成子模块,用于将所述第一纹理图像根据高斯分布生成第二纹理图像;

第二纹理图像偏移子模块,用于根据所述第二纹理图像进行随机偏移生成至少一取样纹理图像;

在本申请一实施例中,所述第三纹理图像绘制模块303包括:

第四纹理图像得到子模块,用于根据所述至少一取样纹理图像进行混合得到第四纹理图像;

第四纹理图像映射子模块,用于根据第四纹理图像映射为所述第三纹理图像。

在本申请一实施例中,所述第二纹理图像偏移子模块包括:

图像块得到单元,用于对所述第二纹理图像进行分块,得到至少一图像块;

图像块偏移单元,用于分别对所述至少一图像块进行随机偏移,得到至少一取样纹理图像;

在本申请一实施例中,所述第四纹理图像得到子模块包括:

第二颜色值确定单元,用于在所述至少一取样纹理图像中,确定所述第二纹理图像中图像块对应的第二颜色值;其中,所述第二纹理图像中图像块具有第一颜色值;

第三颜色值得到单元,用于对所述第二颜色值进行混合,得到第三颜色值;

颜色值替换单元,用于采用所述第三颜色值替换所述第二纹理图像中图像块对应的第一颜色值,得到第四纹理图像。

在本申请一实施例中,所述第三颜色值得到单元包括:

权重值确定子单元,用于针对所述第二纹理图像中像素点,确定所在的图像块,以及与所在的图像块中每个顶点对应的权重值;

颜色值加权子单元,用于采用所述权重值,对所述第二颜色值进行加权,得到第三颜色值。

在本申请一实施例中,还包括:

反映射函数生成模块,用于生成所述第二纹理图像与所述第一纹理图像对应的反映射函数;

所述第四纹理图像映射子模块包括:

反映射单元,用于采用所述反映射函数,将所述第四纹理图像映射为第三纹理图像。

在本申请一实施例中,所述第三纹理图像与所述第一纹理图像对应的图像期望和方差相同。

在本申请一实施例中,所述第一纹理图像为所述游戏场景中地形对应的纹理图像。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请一实施例还提供了一种电子设备,可以包括处理器、存储器及存储在存储器上并能够在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上游戏中纹理图像的处理方法的步骤。

本申请一实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如上游戏中纹理图像的处理方法的步骤。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对所提供的游戏中纹理图像的处理方法及装置、电子设备、存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

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