CN117218271A - 面片生成方法及装置、存储介质及电子设备 - Google Patents

面片生成方法及装置、存储介质及电子设备 Download PDF

Info

Publication number
CN117218271A
CN117218271A CN202311164973.4A CN202311164973A CN117218271A CN 117218271 A CN117218271 A CN 117218271A CN 202311164973 A CN202311164973 A CN 202311164973A CN 117218271 A CN117218271 A CN 117218271A
Authority
CN
China
Prior art keywords
map
virtual object
object model
color
model
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
Application number
CN202311164973.4A
Other languages
English (en)
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 CN202311164973.4A priority Critical patent/CN117218271A/zh
Publication of CN117218271A publication Critical patent/CN117218271A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本公开涉及计算机领域,具体涉及一种面片生成方法及装置、计算机可读存储介质及电子设备,上述方法包括:获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;根据目标法线贴图生成虚拟对象模型的面片。通过本公开实施例的技术方案,可以解决在树木面片的表现较为平整且体积感较差的问题。

Description

面片生成方法及装置、存储介质及电子设备
技术领域
本公开涉及计算机领域,具体而言,涉及面片生成方法、面片生成装置、计算机可读存储介质、电子设备。
背景技术
随着终端设备以及游戏业的发展,涌现出大量的不同题材的游戏,以满足玩家的需求。在一些游戏中,需要在游戏场景中设置树木模型,树木模型的表现效果通常与模型面数相关,一般而言,模型面数越多,树木模型的表现效果越好。然而,随着树木模型的模型面数的增多,在进行游戏渲染时,其产生的卡顿也会越来越严重。
在相关技术中,可以为树木模型创建树木面片,在将树木面片贴在游戏场景中的面片模型上。然而,在将树木面片设置在游戏场景中时,在玩家视角中,树木表现较为平整,体积感以及真实感较差,且缺少在动态光下的阴影体积关系,使得玩家在进行游玩时,沉浸感较差。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种面片生成方法及装置、计算机可读存储介质及电子设备,可以解决在树木面片的表现较为平整且体积感较差的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供了一种面片生成方法,其特征在于,包括:获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;其中,第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;根据目标法线贴图生成虚拟对象模型的面片。
根据本公开的第二方面,提供了一种面片生成装置,其特征在于,装置包括:第一贴图生成模块,用于获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;第二贴图生成模块,用于获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;其中,第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;叠加处理模块,用于将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;面片生成模块,用于根据目标法线贴图生成虚拟对象模型的面片。
根据本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现如上述实施例中第一方面的面片生成方法。
根据本公开的第四方面,提供了一种电子设备,包括:
一个或多个处理器;以及
存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现如上述实施例中第一方面的面片生成方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开的一种实施例提供的面片生成方法中,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。一方面,能够通过虚拟长方体模型渲染第二法线贴图,并将第二法线贴图与虚拟对象模型的第一法线贴图相叠加得到目标法线贴图,通过目标法线贴图,能够使得面片在游戏场景中视觉上具有弧度体积且视觉上更加立体;另一方面,由于面片的阴影体积关系与面片的法线信息相关,因此可以基于目标法线贴图实现面片的阴影体积关系。从而增加通过目标法线贴图得到的面片的体积感以及真实感,进而提升玩家的沉浸感。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了本公开示例性实施例中面片生成方法示例性系统架构的示意图;
图2示意性示出本公开示例性实施例中面片生成方法的流程图;
图3示意性示出本公开示例性实施例中一种虚拟对象模型(树木模型)的示意图;
图4示意性示出本公开示例性实施例中一种二维空间中法线的示意图;
图5示意性示出本公开示例性实施例中一种三维空间中法线的示意图;
图6示意性示出本公开示例性实施例中多种法线材质球的示意图;
图7示意性示出本公开示例性实施例中根据第一材质球渲染得到的虚拟对象模型的第一法线贴图的示意图;
图8示意性示出本公开示例性实施例中通过xyz方向的变量确定法线的示意图;
图9示意性示出本公开示例性实施例中虚拟对象模型的面片的示意图;
图10示意性示出本公开示例性实施例中虚拟对象模型的颜色贴图的示意图;
图11示意性示出本公开示例性实施例中在虚拟对象模型上方设置虚拟平面的示意图;
图12示意性示出本公开示例性实施例中通过虚拟摄像模组的正交模式对树木模型进行拍摄的示意图;
图13示意性示出本公开示例性实施例中一种将暗部遮罩与初始颜色贴图进行叠加得到的虚拟对象模型的颜色贴图的示意图;
图14示意性示出本公开示例性实施例中一种亮暗对比灰度图的示意图;
图15示意性示出本公开示例性实施例中一种虚拟对象模型的透贴贴图的示意图;
图16示意性示出本公开示例性实施例中通过本公开的方案得到的树木面片在虚拟场景中大面积应用的示意图;
图17示意性示出本公开示例性实施例中一种面片生成装置的组成示意图;
图18示意性示出了适于用来实现本公开示例性实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参照附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现、材料或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个软件硬化的模块中实现这些功能实体或功能实体的一部分,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示出了可以应用本公开实施例的面片生成方法示例性系统架构的示意图。
如图1所示,系统架构1000可以包括终端设备1001、1002、1003中的一种或多种,网络1004和服务器1005。网络1004用以在终端设备1001、1002、1003和服务器1005之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器1005可以是多个服务器组成的服务器集群等。
用户可以使用终端设备1001、1002、1003通过网络1004与服务器1005交互,以接收或发送消息等。终端设备1001、1002、1003可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。另外,服务器1005可以是提供各种服务的服务器。
在一种实施例中,本公开的面片生成方法的执行主体可以是服务器1005,服务器1005可以获取由终端设备1001、1002、1003发送的虚拟对象模型以及虚拟长方体模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。
此外,还可以通过终端设备1001、1002、1003等执行本公开的面片生成方法,以实现获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。
此外,本公开面片生成方法实现过程还可以由终端设备1001、1002、1003和服务器1005共同实现。例如,终端设备1001、1002、1003可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,将获取的目标法线贴图发送给服务器1005,以使服务器1005可以根据目标法线贴图生成虚拟对象模型的面片。
随着终端设备以及游戏业的发展,涌现出大量的不同题材的游戏,以满足玩家的需求。在一些游戏中,需要在游戏场景中设置树木模型,树木模型的表现效果通常与模型面数相关,一般而言,模型面数越多,树木模型的表现效果越好。然而,随着树木模型的模型面数的增多,在进行游戏渲染时,其产生的卡顿也会越来越严重。
在相关技术中,可以为树木模型创建树木面片,在将树木面片贴在游戏场景中的面片模型上。然而,在将树木面片设置在游戏场景中时,在玩家视角中,树木表现较为平整,体积感以及真实感较差,且缺少在动态光下的阴影体积关系,使得玩家在进行游玩时,沉浸感较差。
在本公开的一种示例实施例中,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。参考图2所示,示出了本示例性实施方式中面片生成方法的一种流程图,可以包括以下步骤:
步骤S210:获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;
步骤S220:获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;其中,第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;
步骤S230:将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;
步骤S240:根据目标法线贴图生成虚拟对象模型的面片。
本公开的一种实施例提供的面片生成方法中,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。一方面,能够通过虚拟长方体模型渲染第二法线贴图,并将第二法线贴图与虚拟对象模型的第一法线贴图相叠加得到目标法线贴图,通过目标法线贴图,能够使得面片在游戏场景中视觉上具有弧度体积且视觉上更加立体;另一方面,由于面片的阴影体积关系与面片的法线信息相关,因此可以基于目标法线贴图实现面片的阴影体积关系。从而增加通过目标法线贴图得到的面片的体积感以及真实感,进而提升玩家的沉浸感。
下面,将结合图2及实施例对本示例性实施例中的面片生成方法的步骤S210~S240进行更详细的说明。
步骤S210,获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;
在本公开的一种示例实施例中,可以获取虚拟对象模型。具体的,虚拟对象模型可以包括高模对象模型,高模对象模型是指模型面数大于预设数值的虚拟对象模型。例如,高模对象模型可以为模型面数为2万的虚拟对象模型。需要说明的是,本公开对于虚拟对象模型的具体类型并不做特殊限定。
如图3所示,为一种虚拟对象模型(树木模型)的示意图。
在本公开的一种示例实施例中,在获取到虚拟对象模型之后,可以确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图。其中,第一材质球可以包括法线材质球。具体的,第一材质球可以用于在实时渲染中模拟高精度几何细节的材质,可以使用第一法线贴图来改变表面的法线方向,以产生视觉上的细节和凹凸感,法线材质球利用第一法线贴图来改变光照和阴影计算中的法线方向,使表面看起来具有高分辨率模型的细节,法线材质球能够模拟出凹凸纹理、皱褶、表面粗糙度等细节效果。
其中,举例而言,如图4所示,在二维空间中,对于平线,法线是一条垂直于该平线的线。对于曲线,法线是一条垂直于该曲线的切线的直线。
举例而言,如图5所示,在三维空间内,对于平面,法线为垂直于该平面的某个点的线;对于曲面,法线为在某个点上与曲面相切平面垂直方向的直线。
进一步的,可以提供多种法线材质球,可以在多种法线材质球中确定第一材质球。
本公开的方案,可以基于Blender(三维图形图像软件)进行实现,Blender是一款免费开源三维图形图像软件,提供从建模、动画、材质、渲染、到音频处理、视频剪辑等一系列动画短片制作解决方案。
举例而言,如图6所示,在Blender中,提供了多种法线材质球。
在本公开的一种示例实施例中,可以根据第一材质球渲染虚拟对象模型的第一法线贴图。具体的,可以将虚拟对象模型的表面进行展开,为低多边形模型创建适当的UV(Texture Coordinates,二维坐标系统)映射,设置烘焙参数,运行烘焙过程,通过第一材质球将高多边形模型的细节转化为第一法线贴图。
举例而言,如图7所示,为根据第一材质球渲染得到的虚拟对象模型的第一法线贴图。
在本公开的一种示例实施例中,虚拟对象模型的第一法线贴图可以用于保存虚拟对象模型的各个顶点切线空间下的法线,可以用于在着色器中进行相关计算,例如光照计算。
在本公开的一种示例实施例中,虚拟对象模型的第一法线贴图可以使用深度或表面变形为虚拟对象模型添加凹凸(立体)的效果,但不会让虚拟对象模型的网格产生真实的变形,为二维图像纹理,可以用于改变光线对网格的影响。虚拟对象模型表面产生明暗变化的直接原因就是光线照射角度的不同,法线可以用于模拟出高面数模型的光照信息,光照信息可以用于计算光入射方向与入射点的法线夹角。
在本公开的一种示例实施例中,第一法线贴图可以采用RGB通道储存信息,各颜色通道的取值范围在0到1之间(8位颜色的值是0到255),可以通过各颜色通道的取值控制光线的反射角度。
在本公开的一种示例实施例中,法线为方向向量,可以通过三个变量确定法线在三维空间中的方向。例如,空间坐标系为xyz坐标系,第一法线贴图中的RGB(Red GreenBlue,红、绿、蓝)通道可以用于存储三维空间中三个变量的数值,其中,R通道用于存储x方向的变量的值,B通道用于存储y方向的变量的值,B通道用于存储z方向的变量的值。
例如,如图8所示,为通过xyz方向的变量确定法线的示意图,其中,x为-5,y为3,z为5。
在本公开的一种示例实施例中,可以通过虚拟对象模型(高维)导出第一法线贴图,然后转化为低模,在低模时用导出的第一法线贴图进行计算,能够节省性能且达到目标效果。
需要说明的是,本公开对于根据第一材质球渲染虚拟对象模型的第一法线贴图的具体方式并不做特殊限定。
在本公开的一种示例实施例中,在Blender中,导入虚拟对象模型之后,可以将渲染引擎设置为cycles模式(Blender的光线追踪产品渲染引擎),可以获得更好的光线效果,从而得到更好的投影效果。其中,Cycles渲染是Blender的光线追踪产品渲染引擎。
进一步的,可以在Blender的设置中取消选择轮廓,可以使得渲染得到的第一法线贴图不带有轮廓线。
进一步的,可以在Blender的设置中开启降噪,其中,采样值越高精度越高,可以使得烘焙生成的面片更加精细且没有噪波。
进一步的,可以在Blender的设置中调整贴图的大小。具体的,贴图越大,精度越高。
步骤S220,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型的第一法线贴图之后,可以获取虚拟长方体模型,并确定第二材质球。具体的,虚拟长方体模型由六个平面组成,分别代表着长方体的前、后、左、右、上和下六个面。
进一步的,虚拟长方体模型可以为虚拟正方体模型。
在本公开的一种示例实施例中,第一材质球与第二材质球可以相同,也可以不同。
在本公开的一种示例实施例中,可以根据第二材质球渲染虚拟长方体模型的第二法线贴图。其中,第二材质球可以包括法线材质球。具体的,第二法线贴图中的法线信息可以用于形成圆弧或曲面效果,可以用于定义光线如何从曲面反弹,并且可以控制面之间的过渡,使得在三维空间内灯光的反射受到第二法线贴图的影响,可以使得生成的面片中具有阴影分界线,可以使虚拟对象模型的面片的表面具有更加弯曲或曲面的效果。
具体而言,可以先创建虚拟长方体模型,为虚拟长方体模型创建UV映射,设置输出路径、选择合适的纹理大小和文件格式,并选择第二法线贴图作为烘焙目标,运行烘焙过程,将虚拟长方体模型的细节转化为第二法线贴图。
需要说明的是,本公开对于根据第二材质球渲染虚拟长方体模型的第二法线贴图的具体方式并不做特殊限定。
步骤S230,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型的第一法线贴图以及虚拟长方体模型的第二法线贴图之后,可以将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图。具体的,目标法线贴图中包含第一法线贴图的法线信息和第二法线贴图的法线信息。
在本公开的一种示例实施例中,可以将第一法线贴图以及第二法线贴图分别设置在两个图层中,并将两个图层进行叠加。
步骤S240,根据目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型的目标法线贴图之后,可以根据目标法线贴图生成虚拟对象模型的面片。具体的,虚拟对象模型的面片的生成应用了目标法线贴图,目标法线贴图是通过第一法线贴图与第二法线贴图进行叠加处理得到的,即通过目标法线贴图渲染得到的面片中,不仅保留了高模模型的法线信息的基础上,还可以通过第二法线贴图使得面片产生圆弧或曲面效果,能够使得面片在游戏场景中视觉上具有弧度体积且视觉上更加立体。
举例而言,如图9所示,根据目标法线贴图生成虚拟对象模型的面片中,能够使得面片的部分区域(图中的方框中)在视觉上具有弧度体积且视觉上更加立体。
在本公开的一种示例实施例中,虚拟对象模型的面片,可以包括将多个贴图叠加在虚拟场景中所显示出的状态。
在本公开的一种示例实施例中,根据叠加系数将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图。其中,叠加系数用于指示第一法线贴图或第二法线贴图在叠加处理过程中的参与程度。
具体的,叠加系数可以用于调整第一法线贴图和第二法线贴图的叠加处理方式,以调整第一法线贴图和第二法线贴图在叠加处理过程中的相对权重,以及将第一法线贴图与第二法线贴图叠加处理后所要达到的叠加效果。举例而言,叠加系数的取值范围可以为0~1,当叠加系数为0时,第二法线贴图的叠加效果为0,即第二法线贴图没有参与叠加处理,叠加系数为1时,第二法线贴图全部参与叠加处理。
需要说明的是,本公开对于叠加系数的值以及根据叠加系数将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图的具体方式并不做特殊限定。
在本公开的一种示例实施例中,可以根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片。具体的,虚拟对象模型的颜色贴图可以用于指示模型表面颜色和纹理,颜色贴图包含了模型表面的颜色信息,可以用来描述物体的外观、纹理和材质。在颜色贴图中,可以包含以下几种信息:基础颜色、纹理、阴影和高光、透明度等。具体而言,可以将虚拟对象模型的颜色贴图以及目标法线贴图叠加在面片模型上,得到虚拟对象模型对应的树木面片。
举例而言,虚拟对象模型的颜色贴图如图10所示。
需要说明的是,本公开对于虚拟对象模型的颜色贴图的生成方式以及根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片的具体方式并不做特殊限定。
在本公开的一种示例实施例中,可以通过Photoshop(图像编辑和处理软件)调整颜色贴图并输出到neox引擎(图像渲染引擎)。
在本公开的一种示例实施例中,可以在Blender的设置中选择不剔除,透明模式选择为alpha_test(透明度测试模式),不剔除是指面片在引擎里面为双面显示,避免背面观察时穿帮。
在本公开的一种示例实施例中,在虚拟对象模型上方设置虚拟平面,基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图,可以包括以下步骤S310~S320:
步骤S310,在虚拟对象模型上方设置虚拟平面;其中,虚拟对象模型包括第一模型以及第二模型,虚拟平面靠近第一模型,虚拟平面垂直于第二模型,虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色的差异小于预设值;
在本公开的一种示例实施例中,在通过上述步骤获取虚拟对象模型之后,可以在虚拟对象模型上设置一虚拟平面,可以在渲染引擎或建模软件中设置材质属性,包括虚拟平面的自发光颜色以及基础颜色。具体的,虚拟平面本身可以产生光线,虚拟平面的自发光颜色是指该平面在没有外部光源照射时所散发出的颜色。虚拟平面的自发光颜色包括白色、黄色、蓝色、绿色等,但并不限于这些选择,自发光颜色可以是任何RGB或RGBA(RedGreen Blue Alpha,红、绿、蓝、透明度)颜色值的组合;虚拟平面的基础颜色是指该虚拟平面在没有任何光照或纹理影响下的固有颜色,可以用于指示该虚拟平面在理想条件下所显示的颜色。基础颜色可以是任何颜色,例如是黑色、白色或者其他任意的RGB或RGBA颜色值的组合。在渲染引擎或建模软件中,可以为虚拟平面创建一个具有特定基础颜色的材质,或者,也可以调整材质的颜色属性,以对虚拟平面的基础颜色进行调整。
在本公开的一种示例实施例中,虚拟对象模型包括第一模型以及第二模型,虚拟平面靠近第一模型,虚拟平面垂直于第二模型。具体的,虚拟对象模型可以通过两部分构成,包括第一模型以及第二模型,其中,第一模型与虚拟平面之间的距离小于第二模型与虚拟平面之间的距离,且虚拟平面与第二模型相互垂直。
在本公开的一种示例实施例中,虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色的差异小于预设值。具体的,第二模型具有基础颜色,且虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色的差异小于预设值,是指虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色较为接近。
步骤S320,基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。
在本公开的一种示例实施例中,在通过上述步骤在虚拟对象模型上方设置虚拟平面之后,可以基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。具体的,虚拟平面可以基于基础颜色以及自发光颜色对虚拟对象模型产生影响,可以基于此影响生产虚拟对象模型的颜色贴图。
具体而言,虚拟平面可以通过自发光对虚拟对象模型进行光照,且最终发射出的自发光的颜色与自发光颜色以及基础颜色相关,可以使得虚拟对象模型上接收到虚拟平面最终发射出的自发光,以根据自发光对虚拟对象模型的颜色进行调整,并根据调整后的虚拟对象模型生成该虚拟对象模型的颜色贴图,且由于虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色较为接近,即虚拟平面最终发射出的自发光的颜色与第二模型的基础颜色相适应。
举例而言,如图11所示,虚拟对象模型为树木模型,树木模型中可以包括树叶模型1102(第一模型)以及树干模型1103(第二模型),在树木模型在虚拟场景中倒置时,可以在树叶模型的下方设置虚拟平面1101,此时,虚拟平面1101靠近树叶模型1102,远离树干模型1103,且树干模型1103垂直于虚拟平面1101,且虚拟平面1101的基础颜色以及自发光颜色与树干模型1103的基础颜色较为接近,可以为树干部分补充环境光,使得树木的底部阴影更加通透逼真,避免树木模型的底部出现死黑情况。
通过上述步骤S310~S320,可以在虚拟对象模型上方设置虚拟平面,基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。通过本公开的方案,可以为虚拟对象模型补充环境光,使得虚拟对象模型的阴影更加通透逼真。
在本公开的一种示例实施例中,可以通过虚拟摄像模组的正交模式对虚拟对象模型进行拍摄得到虚拟对象模型的颜色贴图。其中,虚拟摄像模组的视角与虚拟对象模型相互垂直。具体的,具体的,通过正交模式进行拍摄时,无需关注虚拟对象模型与相机位置的远近,其拍摄得到的结果相同。在正交模式下进行拍摄,可以使得烘焙的面片不带透视,能够真实的还原虚拟对象模型的大小和尺寸。
此外,通过虚拟摄像模组的正交模式对虚拟对象模型进行拍摄时,虚拟对象模型需要被包含于虚拟摄像模组的视野范围内,从而正确的渲染出虚拟对象模型的颜色贴图。
举例而言,如图12所示,为通过虚拟摄像模组的正交模式对树木模型(虚拟对象模型)进行拍摄的示意图,其中,虚拟摄像模组的视角与树木模型相互垂直。
在本公开的一种示例实施例中,可以在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息,根据投影信息得到虚拟对象模型的颜色贴图。根据投影信息得到虚拟对象模型的颜色贴图,可以包括以下步骤S410~S420:
步骤S410,在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息;
步骤S420,根据投影信息得到虚拟对象模型的颜色贴图。
在本公开的一种示例实施例中,可以在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息。具体的,平行光的光线是平行,且不会发生衰减。通过设置平行光源的位置、方向和强度等属性,可以模拟出在虚拟环境中的太阳光或远距离光照的效果。当平行光照射到虚拟对象模型上时,可以产生阴影效果,以此确定虚拟对象模型的投影信息,投影信息可以包括物体的轮廓、表面细节以及阴影等。通过虚拟对象模型的投影信息可以确定不同部分的明暗度、颜色和纹理等属性,因此可以基于投影信息得到虚拟对象模型的颜色贴图。
具体而言,可以调整平行光的方向与虚拟场景中的平行光方向一致,从而使得最终生成的面片的投影效果与虚拟场景中的平行光所导致的阴影效果一致,即具有正确的投影与阴影关系。
在本公开的一种示例实施例中,可以基于虚拟场景的需求设置平行光的光照强度。例如可以将光照强度设置为50000w。
在本公开的一种示例实施例中,可以在Blender的设置中选择透射阴影以及多重重要性采样,以使得平行光在虚拟对象模型上产生投影,从而确定虚拟对象模型内部的阴影关系。
通过上述步骤S410~S420,可以在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息,根据投影信息得到虚拟对象模型的颜色贴图,通过该颜色贴图得到的面片增加了立体感和深度感。
在本公开的一种示例实施例中,可以获取初始颜色贴图,对初始颜色贴图进行从上至下的渐变高光处理得到虚拟对象模型的颜色贴图。其中,初始颜色贴图即为未进行从上至下的渐变高光处理的虚拟对象模型的颜色贴图。具体的,可以控制虚拟对象模型上方的亮度较高,下方的亮度较低,从而强化虚拟对象模型下方接受光线较少,亮度较低的表现,从而提升玩家的沉浸感。
进一步的,渐变高光处理对应有一灰度值,该灰度值可以用于指示渐变高光处理的亮度值,可以同时对整体亮度值进行调整,也可以仅对部分亮度值进行调整。
在本公开的一种示例实施例中,可以获取暗部遮罩,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图。具体的,暗部遮罩可以用于对初始颜色贴图进行遮罩处理,以模拟光线照射下的阴影和凹陷感。
具体而言,初始颜色贴图可以包含虚拟对象模型的颜色、纹理或其他视觉特征,而暗部遮罩用于对初始颜色贴图进行遮罩处理,可以将暗部遮罩与初始颜色贴图进行叠加,以控制初始颜色贴图的暗部的颜色、明暗度和细节等。
举例而言,如图13所示,为一种将暗部遮罩与初始颜色贴图进行叠加得到的虚拟对象模型的颜色贴图的示意图,其中,树叶中的黑色部分为暗部遮罩对应的位置。
需要说明的是,本公开对于将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图的具体方式并不做特殊限定。
在本公开的一种示例实施例中,可以将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部,根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图,根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图,可以包括以下步骤S510~S530:
步骤S510,将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部;
在本公开的一种示例实施例中,可以将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部。具体的,初始颜色贴图可以用于指示虚拟对象模型的颜色、纹理或其他视觉特征,暗部遮罩中可以包括颜色、明暗度和细节等信息,用于模拟光线照射下的阴影和凹陷感。可以将初始颜色贴图以及暗部遮罩进行叠加,将叠加的重合部分确定为颜色贴图的暗部,在颜色贴图的暗部,颜色贴图的颜色较暗,或者,颜色贴图的明暗度较低,以模拟光线照射下的阴影和凹陷感。此外,将颜色贴图中除暗部之外的部分确定为颜色贴图的亮部。
需要说明的是,本公开对于将初始颜色贴图以及暗部遮罩叠加的叠加位置并不做特殊限定,可以根据业务场景具体调整叠加位置。
步骤S520,根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图;
在本公开的一种示例实施例中,在通过上述步骤得到颜色贴图的亮部以及颜色贴图的暗部之后,可以根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图。具体的,在颜色贴图的暗部,颜色贴图的颜色较暗,或者,颜色贴图的明暗度较低,以模拟光线照射下的阴影和凹陷感;在述颜色贴图的亮部,颜色贴图的颜色较为饱和,或者,颜色贴图的明暗度较高。基于颜色贴图的亮部以及颜色贴图的暗部中的颜色以及明暗度,可以生成亮暗对比灰度图,该亮暗对比灰度图用于指示颜色贴图中各位置的颜色以及明暗度。亮暗对比灰度图可以用于突出亮部与暗部之间的明暗度对比,从而确定虚拟对象模型的亮部与暗部的阴影体积关系。
需要说明的是,本公开对于根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图的具体方式并不做特殊限定。
步骤S530,根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。
在本公开的一种示例实施例中,在通过上述步骤得到亮暗对比灰度图之后,可以根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。具体的,亮暗对比灰度图用于指示颜色贴图中各位置的颜色以及明暗度,此时,可以根据亮暗对比灰度图对初始颜色贴图中各位置的颜色以及明暗度进行调整,以生成虚拟对象模型的颜色贴图。
举例而言,如图14所示,为一种亮暗对比灰度图的示意图。
需要说明的是,本公开对于根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图的具体方式并不做特殊限定。
进一步的,可以添加世界纹理坐标,通过世界纹理坐标对暗部遮罩进行移动、旋转、缩放,以控制暗部遮罩的位置,使得得到的面片在虚拟控件中的体积关系更加突出,增加面片的写实感以及体积感。
通过上述步骤S510~S530,可以将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部,根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图,根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。
在本公开的一种示例实施例中,响应于针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整,响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整,可以包括以下步骤S610~S620:
步骤S610,响应于针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整;
步骤S620,响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。
在本公开的一种示例实施例中,在得到颜色贴图之后,可以对颜色贴图的亮度进行调整。具体的,颜色贴图具有第一方向以及第二方向,可以接收针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整,接收针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。其中,亮度是指颜色的明暗程度,可以通过增加或减少颜色的明亮值进行调整。
例如,第一方向为横向方向,第二方向为纵向方向,可以沿颜色贴图的横向方向对颜色贴图的亮度进行调整,例如,在进行调整时,颜色贴图从左至右亮度逐渐增加,可以沿颜色贴图的纵向方向对颜色贴图的亮度进行调整,例如,在进行调整时,颜色贴图从上至下亮度逐渐增加。
需要说明的是,本公开对于沿颜色贴图的第一方向对颜色贴图的亮度进行调整以及沿颜色贴图的第二方向对颜色贴图的亮度进行调整的具体方式并不做特殊限定。
通过上述步骤S610~S620,可以响应于针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整,响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。可以用于模拟虚拟场景内通过不同方向向虚拟对象模型发射平行光时虚拟对象模型的亮度表现,从而使得虚拟对象模型的面片更加真实,增加了玩家的沉浸感。
在本公开的一种示例实施例中,根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片。具体的,透贴贴图可以用于模拟虚拟对象模型表面上的透明效果,可以包含不同程度的透明度值,用来描述虚拟对象模型哪些部分是透明的、半透明的或者不透明的。具体而言,可以将虚拟对象模型的透贴贴图、颜色贴图以及目标法线贴图叠加在面片模型上,得到虚拟对象模型对应的树木面片。
举例而言,如图15所示,为虚拟对象模型的透贴贴图的示意图,其中,黑色部分不显示,白色显示,可以用于确定颜色贴图中显示的部分以及不显示的部分。
需要说明的是,本公开对于根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片的具体方式并不做特殊限定。
在本公开的一种示例实施例中,可以根据虚拟对象模型确定虚拟对象模型的透贴信息,根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图,可以包括以下步骤S710~S720:
步骤S710,根据虚拟对象模型确定虚拟对象模型的透贴信息;
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型之后,可以根据虚拟对象模型确定虚拟对象模型的透贴信息。具体的,透贴信息可以用于指示虚拟对象模型哪些部分是透明的、半透明的或者不透明的。可以通过虚拟对象模型的几何结构、材质属性以及透明效果需求,确定虚拟对象模型的各个部分的透明情况,即虚拟对象模型的透贴信息。
需要说明的是,本公开对于根据虚拟对象模型确定虚拟对象模型的透贴信息的具体方式并不做特殊限定。
步骤S720,根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型的透贴信息之后,可以根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。具体的,虚拟对象模型的颜色贴图可以用于指示虚拟对象模型的颜色、纹理或其他视觉特征,虚拟对象模型的透贴信息可以用于指示虚拟对象模型的各个部分的透明情况,可以根据虚拟对象模型的透贴信息确定对象模型的颜色贴图中各个部分在透明情况的影响下的显示情况,并基于此确定虚拟对象模型的透贴贴图。
例如,可以根据虚拟对象模型的透贴信息对虚拟对象模型的颜色贴图进行调整,添加透贴信息,确定虚拟对象模型中的颜色贴图的各部分的透明情况的贴图,该贴图即为虚拟对象模型的透贴贴图。
需要说明的是,本公开对于根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图的具体方式并不做特殊限定。
通过上述步骤S710~S720,可以根据虚拟对象模型确定虚拟对象模型的透贴信息,根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。
在本公开的一种示例实施例中,可以根据第一标识确定第一模型,根据第一模型确定第一模型的透贴信息,根据第二标识确定第二模型,根据第二模型确定第二模型的透贴信息。具体的,在虚拟对象模型中,包括第一模型以及第二模型,在创建虚拟对象模型时,可以分别创建第一模型以及第二模型,且可以为第一模型以及第二模型分别赋予第一标识以及第二标识,在生成虚拟对象模型的透贴贴图时,可以先根据第一标识在虚拟对象模型中确定第一模型,并针对第一模型确定该第一模型对应的透贴信息,并根据第二标识在虚拟对象模型中确定第二模型,并针对第二模型确定该第二模型对应的透贴信息。在确定第一模型的透贴信息与第二模型的透贴信息时,可以通过第一模型与第二模型的几何结构、材质属性以及透明效果需求,确定第一模型与第二模型的各个部分的透明情况,即第一模型的透贴信息与第二模型的透贴信息。
在本公开的一种示例实施例中,在通过上述步骤得到第一模型的透贴信息与第二模型的透贴信息之后,可以根据第一模型的透贴信息以及虚拟对象模型的颜色贴图确定第一模型的第一透贴贴图,根据第二模型的透贴信息以及虚拟对象模型的颜色贴图确定第二模型的第二透贴贴图,将第一透贴贴图以及第二透贴贴图合并得到虚拟对象模型的透贴贴图。具体的,可以根据第一模型的透贴信息确定颜色贴图中与第一模型相关的颜色贴图中各部分的透明情况,并基于此确定第一模型的第一透贴贴图;可以根据第二模型的透贴信息确定颜色贴图中与第二模型相关的颜色贴图中各部分的透明情况,并基于此确定第二模型的第二透贴贴图。在得到第一模型的第一透贴贴图以及第二模型的第二透贴贴图之后,可以将第一透贴贴图以及第二透贴贴图合并得到虚拟对象模型的透贴贴图。
举例而言,在创建虚拟对象模型时,可以为第一模型设置ID(Identification,标识)1,为第二模型设置ID2,可以通过ID1与ID2区分第一模型以及第二模型,在需要确定第一模型的第一透贴贴图以及第二模型的第二透贴贴图时,可以根据ID1与ID2分别确定第一模型以及第二模型。
举例而言,虚拟对象模型为树木模型,树木模型可以包括树叶模型(第一模型)以及树干模型(第二模型),可以分别为树叶模型以及树干模型设置ID1以及ID2。
进一步的,可以为第一模型以及第二模型分别赋予第一标识以及第二标识,可以便于后期分别对第一模型以及第二模型进行调色以及效果处理。例如,在需要调整第一模型而不调整第二模型的场景中,可以通过第二模型的第二透贴贴图作为蒙版进行遮罩,此时,在调节第一模型的颜色时,第二模型的颜色不会发生改变。
在本公开的一种示例实施例中,可以将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道,获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图,获取材质贴图,将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道,根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片。根据虚拟对象模型的颜色贴图、透贴贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片,可以包括以下步骤S810~S840:
步骤S810,将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道;
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型的透贴贴图以及虚拟对象模型的颜色贴图之后,可以将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道。具体的,在颜色贴图中,可以包括R通道(red,红色)、G通道(Green,绿色)、B通道(Blue,蓝色)、A通道(Alpha,阿尔法),可以用于描述颜色贴图中的颜色信息,这四个通道组合在一起可以表示出一个完整颜色,各通道的取值范围通常是从0到255,其中0表示没有该颜色分量,255表示该颜色分量的最大强度。R通道表示红色分量,控制了颜色贴图中红色的亮度和饱和度,G通道表示绿色分量,控制了颜色贴图中绿色的亮度和饱和度,B通道表示蓝色分量,控制了颜色贴图中蓝色的亮度和饱和度,阿尔法通道表示透明度,它的取值范围通常是从0到1,其中0表示完全透明,1表示完全不透明。可以将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道,以减少贴图数量,从而减小文件大小。
在本公开的一种示例实施例中,可以在Blender渲染虚拟对象模型的颜色贴图,在渲染好颜色贴图的渲染窗口下,选择indexma(贴图合成模式),其中,indexma为blender里面的一种贴图合成方式,可以将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道。其中,可以通过indexma将虚拟对象模型的透贴信息与虚拟对象模型的颜色贴图的阿尔法通道进行合并,其中,阿尔法通道可以用于指示透明度信息,定义透明、不透明和半透明区域,其中白表示不透明,黑表示透明,灰表示半透明,可以将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道,以得到具有透明度信息的颜色贴图。
步骤S820,获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图;
在本公开的一种示例实施例中,可以获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图。具体的,虚拟对象模型的环境遮蔽贴图可以用于模拟虚拟对象模型表面上的阴影和遮蔽效果,产生更加细致的阴影和凹凸感;虚拟对象模型的粗糙度贴图可以用于指示虚拟对象模型表面的粗糙程度或光滑度,虚拟对象模型的表面粗糙度可以确定对光线的反射方式,用于模拟虚拟对象模型表面的凹凸结构及其对光的散射效果;虚拟对象模型的金属度贴图可以用于描述虚拟对象模型表面的金属性质,金属度贴图可以使用灰度值(0-1范围)来表示金属和非金属的区别,其中0表示非金属,1表示完全金属,较高的金属度值会使物体表面呈现出明亮的镜面反射效果,而较低的金属度值则会使物体表面呈现出模糊的散射反射效果。
需要说明的是,本公开对于虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图的获取方式并不做特殊限定。
步骤S830,获取材质贴图,将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道;
在本公开的一种示例实施例中,在通过上述步骤得到虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图之后,可以获取材质贴图,材质贴图可以包括第一颜色通道、第二颜色通道、第三颜色通道。例如,第一颜色通道、第二颜色通道、第三颜色通道分别可以为红色通道、绿色通道、蓝色通道。
具体而言,可以分别将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道。
步骤S840,根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片。
在本公开的一种示例实施例中,在通过上述步骤得到整合了透贴贴图的颜色贴图、目标法线贴图以及整合了环境遮蔽贴图、粗糙度贴图、以及金属度贴图的材质贴图之后,可以将颜色贴图目标法线贴图以及材质贴图进行叠加,生成虚拟对象模型的面片。
需要说明的是,本公开对于根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片的具体方式并不做特殊限定。
通过上述步骤S810~S840,可以将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道,获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图,获取材质贴图,将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道,根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片。通过本公开的方案,可以减少贴图数量,从而减小文件大小。
在本公开的一种示例实施例中,如图16所示,为通过本公开的方案得到的树木面片在虚拟场景中大面积应用的示意图。
本公开的一种实施例提供的面片生成方法中,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。一方面,能够通过虚拟长方体模型渲染第二法线贴图,并将第二法线贴图与虚拟对象模型的第一法线贴图相叠加得到目标法线贴图,通过目标法线贴图,能够使得面片在游戏场景中视觉上具有弧度体积且视觉上更加立体;另一方面,由于面片的阴影体积关系与面片的法线信息相关,因此可以基于目标法线贴图实现面片的阴影体积关系。从而增加通过目标法线贴图得到的面片的体积感以及真实感,进而提升玩家的沉浸感。
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
此外,在本公开的示例性实施方式中,还提供了一种面片生成装置。参照图17所示,一种面片生成装置1700包括第一贴图生成模块1710、第二贴图生成模块1720、叠加处理模块1730和面片生成模块1740。
其中,第一贴图生成模块,用于获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;第二贴图生成模块,用于获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;其中,第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;叠加处理模块,用于将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;面片生成模块,用于根据目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,装置还包括:叠加处理单元,用于根据叠加系数将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;其中,叠加系数用于指示第一法线贴图或第二法线贴图在叠加处理过程中的参与程度。
在本公开的一种示例性实施例中,基于前述方案,根据目标法线贴图生成虚拟对象模型的面片,装置还包括:第一面片生成单元,用于根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,装置还包括:虚拟平面设置单元,用于在虚拟对象模型上方设置虚拟平面;其中,虚拟对象模型包括第一模型以及第二模型,虚拟平面靠近第一模型,虚拟平面垂直于第二模型,虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色的差异小于预设值;第一颜色贴图生成单元,用于基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,装置还包括:正交拍摄单元,用于通过虚拟摄像模组的正交模式对虚拟对象模型进行拍摄得到虚拟对象模型的颜色贴图;其中,虚拟摄像模组的视角与虚拟对象模型相互垂直。
在本公开的一种示例性实施例中,基于前述方案,装置还包括:平行光设置单元,用于在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息;第二颜色贴图生成单元,用于根据投影信息得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,装置还包括:第三颜色贴图生成单元,用于获取初始颜色贴图,对初始颜色贴图进行从上至下的渐变高光处理得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,装置还包括:球形纹理获取单元,用于获取暗部遮罩,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图,装置还包括:纹理叠加单元,用于将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部;亮暗对比灰度图获取单元,用于根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图;第四颜色贴图生成单元,用于根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,颜色贴图具有第一方向以及第二方向,装置还包括:第一方向调整单元,用于响应于针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整;第二方向调整单元,用于响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。
在本公开的一种示例性实施例中,基于前述方案,根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片,装置还包括:第二面片生成单元,用于根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,装置还包括:透贴信息获取单元,用于根据虚拟对象模型确定虚拟对象模型的透贴信息;透贴贴图确定单元,用于根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。
在本公开的一种示例性实施例中,基于前述方案,虚拟对象模型包括第一模型以及第二模型,第一模型有第一标识,第二模型有第二标识,根据虚拟对象模型确定虚拟对象模型的透贴信息,装置还包括:第一子透贴信息获取单元,用于根据第一标识确定第一模型,根据第一模型确定第一模型的透贴信息;第二子透贴信息获取单元,用于根据第二标识确定第二模型,根据第二模型确定第二模型的透贴信息;根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图,装置还包括:第一透贴子贴图生成单元,用于根据第一模型的透贴信息以及虚拟对象模型的颜色贴图确定第一模型的第一透贴贴图;第二透贴子贴图生成单元,用于根据第二模型的透贴信息以及虚拟对象模型的颜色贴图确定第二模型的第二透贴贴图;透贴贴图合并单元,用于将第一透贴贴图以及第二透贴贴图合并得到虚拟对象模型的透贴贴图。
在本公开的一种示例性实施例中,基于前述方案,颜色贴图中包括多个颜色通道,多个颜色通道中包括阿尔法通道,根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片,装置还包括:透贴贴图整合单元,用于将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道;多类型贴图获取单元,用于获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图;材质贴图整合单元,用于获取材质贴图,将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道;第三面片生成单元,用于根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片。
由于本公开的示例实施例的面片生成装置的各个功能模块与上述面片生成方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的面片生成方法的实施例。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述面片生成方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。
下面参照图18来描述根据本公开的这种实施例的电子设备1800。图18显示的电子设备1800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图18所示,电子设备1800以通用计算设备的形式表现。电子设备1800的组件可以包括但不限于:上述至少一个处理单元1810、上述至少一个存储单元1820、连接不同系统组件(包括存储单元1820和处理单元1810)的总线1830、显示单元1840。
其中,存储单元存储有程序代码,程序代码可以被处理单元1810执行,使得处理单元1810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,处理单元1810可以执行如图2中所示的步骤S210:获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图;步骤S220:获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图;其中,第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;步骤S230:将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;步骤S240:根据目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,包括:根据叠加系数将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;其中,叠加系数用于指示第一法线贴图或第二法线贴图在叠加处理过程中的参与程度。
在本公开的一种示例性实施例中,基于前述方案,根据目标法线贴图生成虚拟对象模型的面片,包括:根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:在虚拟对象模型上方设置虚拟平面;其中,虚拟对象模型包括第一模型以及第二模型,虚拟平面靠近第一模型,虚拟平面垂直于第二模型,虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色的差异小于预设值;基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:通过虚拟摄像模组的正交模式对虚拟对象模型进行拍摄得到虚拟对象模型的颜色贴图;其中,虚拟摄像模组的视角与虚拟对象模型相互垂直。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息;根据投影信息得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:获取初始颜色贴图,对初始颜色贴图进行从上至下的渐变高光处理得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:获取暗部遮罩,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图,包括:将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部;根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图;根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,颜色贴图具有第一方向以及第二方向,方法还包括:响应于针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整;响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。
在本公开的一种示例性实施例中,基于前述方案,根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片,包括:根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:根据虚拟对象模型确定虚拟对象模型的透贴信息;根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。
在本公开的一种示例性实施例中,基于前述方案,虚拟对象模型包括第一模型以及第二模型,第一模型有第一标识,第二模型有第二标识,根据虚拟对象模型确定虚拟对象模型的透贴信息,包括:根据第一标识确定第一模型,根据第一模型确定第一模型的透贴信息;根据第二标识确定第二模型,根据第二模型确定第二模型的透贴信息;根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图,包括:根据第一模型的透贴信息以及虚拟对象模型的颜色贴图确定第一模型的第一透贴贴图;根据第二模型的透贴信息以及虚拟对象模型的颜色贴图确定第二模型的第二透贴贴图;将第一透贴贴图以及第二透贴贴图合并得到虚拟对象模型的透贴贴图。
在本公开的一种示例性实施例中,基于前述方案,颜色贴图中包括多个颜色通道,多个颜色通道中包括阿尔法通道,根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片,包括:将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道;获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图;获取材质贴图,将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道;根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片。
本公开的一种实施例提供的电子设备,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。一方面,能够通过虚拟长方体模型渲染第二法线贴图,并将第二法线贴图与虚拟对象模型的第一法线贴图相叠加得到目标法线贴图,通过目标法线贴图,能够使得面片在游戏场景中视觉上具有弧度体积且视觉上更加立体;另一方面,由于面片的阴影体积关系与面片的法线信息相关,因此可以基于目标法线贴图实现面片的阴影体积关系。从而增加通过目标法线贴图得到的面片的体积感以及真实感,进而提升玩家的沉浸感。
存储单元1820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)1821和/或高速缓存存储单元1822,还可以进一步包括只读存储单元(ROM)1823。
存储单元1820还可以包括具有一组(至少一个)程序模块1825的程序/实用工具1824,这样的程序模块1825包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备1800也可以与一个或多个外部设备1870(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1800交互的设备通信,和/或与使得该电子设备1800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1850进行。并且,电子设备1800还可以通过网络适配器1860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1860通过总线1830与电子设备1800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
在本公开的一种示例实施例中,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,其中,第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,包括:根据叠加系数将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图;其中,叠加系数用于指示第一法线贴图或第二法线贴图在叠加处理过程中的参与程度。
在本公开的一种示例性实施例中,基于前述方案,根据目标法线贴图生成虚拟对象模型的面片,包括:根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:在虚拟对象模型上方设置虚拟平面;其中,虚拟对象模型包括第一模型以及第二模型,虚拟平面靠近第一模型,虚拟平面垂直于第二模型,虚拟平面的基础颜色以及自发光颜色与第二模型的基础颜色的差异小于预设值;基于虚拟平面的基础颜色以及自发光颜色生成虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:通过虚拟摄像模组的正交模式对虚拟对象模型进行拍摄得到虚拟对象模型的颜色贴图;其中,虚拟摄像模组的视角与虚拟对象模型相互垂直。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:在虚拟场景中设置平行光,通过平行光确定虚拟对象模型的投影信息;根据投影信息得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:获取初始颜色贴图,对初始颜色贴图进行从上至下的渐变高光处理得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:获取暗部遮罩,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,将暗部遮罩与初始颜色贴图进行叠加得到虚拟对象模型的颜色贴图,包括:将初始颜色贴图以及暗部遮罩叠加确定颜色贴图的亮部以及颜色贴图的暗部;根据颜色贴图的亮部以及颜色贴图的暗部确定亮暗对比灰度图;根据亮暗对比灰度图以及初始颜色贴图得到虚拟对象模型的颜色贴图。
在本公开的一种示例性实施例中,基于前述方案,颜色贴图具有第一方向以及第二方向,方法还包括:响应于针对第一方向的亮度调整操作,沿颜色贴图的第一方向对颜色贴图的亮度进行调整;响应于针对第二方向的亮度调整操作,沿颜色贴图的第二方向对颜色贴图的亮度进行调整。
在本公开的一种示例性实施例中,基于前述方案,根据虚拟对象模型的颜色贴图以及目标法线贴图生成虚拟对象模型的面片,包括:根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片。
在本公开的一种示例性实施例中,基于前述方案,方法还包括:根据虚拟对象模型确定虚拟对象模型的透贴信息;根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图。
在本公开的一种示例性实施例中,基于前述方案,虚拟对象模型包括第一模型以及第二模型,第一模型有第一标识,第二模型有第二标识,根据虚拟对象模型确定虚拟对象模型的透贴信息,包括:根据第一标识确定第一模型,根据第一模型确定第一模型的透贴信息;根据第二标识确定第二模型,根据第二模型确定第二模型的透贴信息;根据虚拟对象模型的透贴信息以及虚拟对象模型的颜色贴图确定虚拟对象模型的透贴贴图,包括:根据第一模型的透贴信息以及虚拟对象模型的颜色贴图确定第一模型的第一透贴贴图;根据第二模型的透贴信息以及虚拟对象模型的颜色贴图确定第二模型的第二透贴贴图;将第一透贴贴图以及第二透贴贴图合并得到虚拟对象模型的透贴贴图。
在本公开的一种示例性实施例中,基于前述方案,颜色贴图中包括多个颜色通道,多个颜色通道中包括阿尔法通道,根据虚拟对象模型的颜色贴图、透贴贴图以及目标法线贴图生成虚拟对象模型的面片,包括:将虚拟对象模型的透贴贴图整合至颜色贴图的阿尔法通道;获取虚拟对象模型的环境遮蔽贴图、虚拟对象模型的粗糙度贴图、虚拟对象模型的金属度贴图;获取材质贴图,将环境遮蔽贴图存储至材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将金属度贴图存储至材质贴图的第三颜色通道;根据虚拟对象模型的颜色贴图、目标法线贴图以及材质贴图生成虚拟对象模型的面片。
本公开的一种实施例提供的计算机可读信号介质,可以获取虚拟对象模型,确定第一材质球,根据第一材质球渲染虚拟对象模型的第一法线贴图,获取虚拟长方体模型,确定第二材质球,根据第二材质球渲染虚拟长方体模型的第二法线贴图,将第一法线贴图与第二法线贴图进行叠加处理得到目标法线贴图,根据目标法线贴图生成虚拟对象模型的面片。一方面,能够通过虚拟长方体模型渲染第二法线贴图,并将第二法线贴图与虚拟对象模型的第一法线贴图相叠加得到目标法线贴图,通过目标法线贴图,能够使得面片在游戏场景中视觉上具有弧度体积且视觉上更加立体;另一方面,由于面片的阴影体积关系与面片的法线信息相关,因此可以基于目标法线贴图实现面片的阴影体积关系。从而增加通过目标法线贴图得到的面片的体积感以及真实感,进而提升玩家的沉浸感。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

Claims (17)

1.一种面片生成方法,其特征在于,所述方法包括:
获取虚拟对象模型,确定第一材质球,根据所述第一材质球渲染所述虚拟对象模型的第一法线贴图;
获取虚拟长方体模型,确定第二材质球,根据所述第二材质球渲染所述虚拟长方体模型的第二法线贴图;其中,所述第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;
将所述第一法线贴图与所述第二法线贴图进行叠加处理得到目标法线贴图;
根据所述目标法线贴图生成所述虚拟对象模型的面片。
2.根据权利要求1所述的方法,其特征在于,所述将所述第一法线贴图与所述第二法线贴图进行叠加处理得到目标法线贴图,包括:
根据叠加系数将所述第一法线贴图与所述第二法线贴图进行叠加处理得到目标法线贴图;其中,所述叠加系数用于指示第一法线贴图或所述第二法线贴图在叠加处理过程中的参与程度。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标法线贴图生成所述虚拟对象模型的面片,包括:
根据所述虚拟对象模型的颜色贴图以及所述目标法线贴图生成所述虚拟对象模型的面片。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述虚拟对象模型上方设置虚拟平面;其中,所述虚拟对象模型包括第一模型以及第二模型,所述虚拟平面靠近所述第一模型,所述虚拟平面垂直于所述第二模型,所述虚拟平面的基础颜色以及自发光颜色与所述第二模型的基础颜色的差异小于预设值;
基于所述虚拟平面的基础颜色以及自发光颜色生成所述虚拟对象模型的颜色贴图。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
通过虚拟摄像模组的正交模式对所述虚拟对象模型进行拍摄得到所述虚拟对象模型的颜色贴图;其中,所述虚拟摄像模组的视角与所述虚拟对象模型相互垂直。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在虚拟场景中设置平行光,通过所述平行光确定所述虚拟对象模型的投影信息;
根据所述投影信息得到所述虚拟对象模型的颜色贴图。
7.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取初始颜色贴图,对所述初始颜色贴图进行从上至下的渐变高光处理得到所述虚拟对象模型的颜色贴图。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取暗部遮罩,将所述暗部遮罩与所述初始颜色贴图进行叠加得到所述虚拟对象模型的颜色贴图。
9.根据权利要求8所述的方法,其特征在于,所述将所述暗部遮罩与所述初始颜色贴图进行叠加得到所述虚拟对象模型的颜色贴图,包括:
将所述初始颜色贴图以及所述暗部遮罩叠加确定所述颜色贴图的亮部以及所述颜色贴图的暗部;
根据所述颜色贴图的亮部以及所述颜色贴图的暗部确定亮暗对比灰度图;
根据所述亮暗对比灰度图以及所述初始颜色贴图得到所述虚拟对象模型的颜色贴图。
10.根据权利要求3所述的方法,其特征在于,所述颜色贴图具有第一方向以及第二方向,所述方法还包括:
响应于针对第一方向的亮度调整操作,沿所述颜色贴图的第一方向对所述颜色贴图的亮度进行调整;
响应于针对第二方向的亮度调整操作,沿所述颜色贴图的第二方向对所述颜色贴图的亮度进行调整。
11.根据权利要求3所述的方法,其特征在于,所述根据所述虚拟对象模型的颜色贴图以及所述目标法线贴图生成所述虚拟对象模型的面片,包括:
根据所述虚拟对象模型的颜色贴图、透贴贴图以及所述目标法线贴图生成所述虚拟对象模型的面片。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
根据所述虚拟对象模型确定所述虚拟对象模型的透贴信息;
根据所述虚拟对象模型的透贴信息以及所述虚拟对象模型的颜色贴图确定所述虚拟对象模型的透贴贴图。
13.根据权利要求12所述的方法,其特征在于,所述虚拟对象模型包括第一模型以及第二模型,所述第一模型有第一标识,所述第二模型有第二标识,所述根据所述虚拟对象模型确定所述虚拟对象模型的透贴信息,包括:
根据所述第一标识确定所述第一模型,根据所述第一模型确定所述第一模型的透贴信息;
根据所述第二标识确定所述第二模型,根据所述第二模型确定所述第二模型的透贴信息;
所述根据所述虚拟对象模型的透贴信息以及所述虚拟对象模型的颜色贴图确定所述虚拟对象模型的透贴贴图,包括:
根据所述第一模型的透贴信息以及所述虚拟对象模型的颜色贴图确定所述第一模型的第一透贴贴图;
根据所述第二模型的透贴信息以及所述虚拟对象模型的颜色贴图确定所述第二模型的第二透贴贴图;
将所述第一透贴贴图以及所述第二透贴贴图合并得到所述虚拟对象模型的透贴贴图。
14.根据权利要求11所述的方法,其特征在于,所述颜色贴图中包括多个颜色通道,所述多个颜色通道中包括阿尔法通道,所述根据所述虚拟对象模型的颜色贴图、透贴贴图以及所述目标法线贴图生成所述虚拟对象模型的面片,包括:
将所述虚拟对象模型的透贴贴图整合至所述颜色贴图的阿尔法通道;
获取所述虚拟对象模型的环境遮蔽贴图、所述虚拟对象模型的粗糙度贴图、所述虚拟对象模型的金属度贴图;
获取材质贴图,将所述环境遮蔽贴图存储至所述材质贴图的第一颜色通道,将粗糙度贴图存储至材质贴图的第二颜色通道,将所述金属度贴图存储至所述材质贴图的第三颜色通道;
根据所述虚拟对象模型的颜色贴图、所述目标法线贴图以及所述材质贴图生成所述虚拟对象模型的面片。
15.一种面片生成装置,其特征在于,所述装置包括:
第一贴图生成模块,用于获取虚拟对象模型,确定第一材质球,根据所述第一材质球渲染所述虚拟对象模型的第一法线贴图;
第二贴图生成模块,用于获取虚拟长方体模型,确定第二材质球,根据所述第二材质球渲染所述虚拟长方体模型的第二法线贴图;其中,所述第二法线贴图用于使得渲染得到的虚拟对象模型的面片的预设区域模拟凸起效果;
叠加处理模块,用于将所述第一法线贴图与所述第二法线贴图进行叠加处理得到目标法线贴图;
面片生成模块,用于根据所述目标法线贴图生成所述虚拟对象模型的面片。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~14中任一项所述的方法。
17.一种电子设备,其特征在于,包括:
一个或多个处理器;以及
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~14中任一项所述的方法。
CN202311164973.4A 2023-09-08 2023-09-08 面片生成方法及装置、存储介质及电子设备 Pending CN117218271A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311164973.4A CN117218271A (zh) 2023-09-08 2023-09-08 面片生成方法及装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311164973.4A CN117218271A (zh) 2023-09-08 2023-09-08 面片生成方法及装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN117218271A true CN117218271A (zh) 2023-12-12

Family

ID=89036411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311164973.4A Pending CN117218271A (zh) 2023-09-08 2023-09-08 面片生成方法及装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN117218271A (zh)

Similar Documents

Publication Publication Date Title
CN110599574B (zh) 游戏场景的渲染方法、装置及电子设备
CN112316420B (zh) 模型渲染方法、装置、设备及存储介质
WO2021129044A1 (zh) 对象渲染方法和装置、存储介质及电子装置
US7583264B2 (en) Apparatus and program for image generation
CN110196746B (zh) 交互界面渲染方法及装置、电子设备、存储介质
CN106534835B (zh) 一种图像处理方法以及装置
CN108564646A (zh) 对象的渲染方法和装置、存储介质、电子装置
CN112215934A (zh) 游戏模型的渲染方法、装置、存储介质及电子装置
US9183654B2 (en) Live editing and integrated control of image-based lighting of 3D models
CN108010118A (zh) 虚拟对象处理方法、虚拟对象处理装置、介质和计算设备
US20230230311A1 (en) Rendering Method and Apparatus, and Device
CN113674389A (zh) 场景渲染方法、装置、电子设备及存储介质
CN116228943B (zh) 虚拟对象面部重建方法、面部重建网络训练方法及装置
CN109712226A (zh) 虚拟现实的透明模型渲染方法及装置
CN113888398B (zh) 头发渲染方法、装置及电子设备
CN113610955A (zh) 一种对象渲染方法、装置及着色器
CN116664752B (zh) 基于图案化光照实现全景显示的方法、系统及存储介质
WO2022042003A1 (zh) 三维着色的方法、装置、计算设备和存储介质
CN112465941B (zh) 一种体积云处理方法、装置、电子设备及存储介质
CN116363288A (zh) 目标物的渲染方法、装置、存储介质及计算机设备
CN117218271A (zh) 面片生成方法及装置、存储介质及电子设备
US20060033736A1 (en) Enhanced Color and Lighting Model for Computer Graphics Productions
CN112473135B (zh) 移动游戏的实时光照模拟方法、装置、设备及存储介质
JP2008077304A (ja) プログラム、情報記憶媒体及び画像生成システム
CN116137051A (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