掌桥专利:专业的专利平台
掌桥专利
首页

光照环境贴图生成方法、装置、电子设备及可读存储介质

文献发布时间:2024-04-18 19:58:26


光照环境贴图生成方法、装置、电子设备及可读存储介质

技术领域

本申请涉及计算机技术领域,更具体地,涉及一种光照环境贴图生成方法、装置、电子设备及可读存储介质。

背景技术

在实拍+CG的电影项目中,导演需要让CG物体完全匹配环境,使其在视觉效果上更加逼真可信,在一般镜头中通常采用前期跟组采集片场来获得场次环境,进而制作HDRI(全称:High Dynamic Range Imagi ng,中文:高动态范围图像)贴图,在DCC软件中可以进一步还原实拍环境,倘若是包含烟雾爆破等动态元素较多的复杂镜头,这个过程的制作难度会大大增加,修改渲染成本也会比较高。

现有渲染方案是通过现场采集的图片拼凑制作HDRI贴图,导入DCC软件中渲染反射层,或在DCC软件中创建相应的简模,使用实拍的图片进行投射进而渲染出周围的环境,受限于前期拍摄的局限性,片场素材的采集可能存在一定的误差,比如曝光,拍摄机器,以及拍摄的颜色管理方案LUT是否与导演拍摄机器相匹配,这将影响最终渲染出的模型的视觉效果。而且,对于特效元素较多的场次镜头,前期片场环境的采集困难重重,并且重建模型进行投射这个过程相对比较耗时,工作量也比较大。

发明内容

鉴于上述问题,本申请实施例提供一种光照环境贴图生成方法、装置、电子设备及可读存储介质,以改善相关技术中需要现场采集图片拼凑制作HDRI贴图造成的光照贴图生成方式复杂的问题。

根据本申请实施例的一个方面,提供了一种光照环境贴图生成方法,所述方法包括:

获取待渲染模型的法线贴图,以及素材贴图;

根据所述法线贴图和所述素材贴图,得到初始环境贴图;

确定初始颜色贴图,基于所述初始颜色贴图与所述法线贴图之间的颜色差异图像,得到所述待渲染模型的颜色贴图;

根据所述颜色贴图对所述初始环境贴图进行像素着色,得到所述待渲染模型的光照环境贴图。

根据本申请实施例的一个方面,提供一种光照环境贴图生成装置,所述装置包括:

贴图获取模块,用于获取待渲染模型的法线贴图,以及素材贴图;

贴图映射模块,用于根据所述法线贴图和所述素材贴图,得到初始环境贴图;

颜色贴图确定模块,用于确定初始颜色贴图,基于所述初始颜色贴图与所述法线贴图之间的颜色差异图像,得到所述待渲染模型的颜色贴图;

贴图生成模块,用于根据所述颜色贴图对所述初始环境贴图进行像素着色,得到所述待渲染模型的光照环境贴图。

根据本申请实施例的一个方面,提供了一种电子设备,包括:处理器;存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如上所述光照环境贴图生成方法。

根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,实现如上所述光照环境贴图生成方法。

本申请实施例提供一种光照环境贴图生成方法、装置、电子设备及可读存储介质,涉及计算机技术领域,通过获取待渲染模型的法线贴图,以及素材贴图,根据法线贴图和素材贴图,得到初始环境贴图,确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图,根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图;本申请实施例通过获取待渲染模型的法线贴图,基于法线贴图生成待渲染模型的光照环境贴图,不需要现场采集的图片拼凑制作光照环境贴图,便捷程度高,并且通过初始颜色贴图对法线贴图中的颜色进行过滤,可以模拟不同光源下的光影效果,具有较高的灵活性。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本申请一实施例示出的路径动画生成方法流程示意图;

图2是根据本申请一实施例示出的待渲染模型的法线贴图示意图;

图3是根据本申请一实施例示出的素材贴图的示意图;

图4是根据本申请一实施例示出的基于模型文件进行渲染生成的法线贴图的示意图;

图5是根据本申请一实施例示出的颜色过滤的示意图;

图6是根据本申请一实施例示出的光照环境贴图生成的示意图;

图7是根据本申请一实施例示出的初始环境贴图生成方法的流程示意图;

图8是根据本申请一实施例示出的数据转换方法的流程示意图;

图9是根据本申请一实施例示出的数据转换的示意图;

图10是根据本申请一实施例示出的基于STMap的坐标变换的示意图;

图11是根据本申请一实施例示出的初始环境贴图生成方法的示意图;

图12是根据本申请一实施例示出的颜色贴图生成方法的流程示意图;

图13是根据本申请一实施例示出的初始颜色贴图生成方法的流程示意图;

图14是根据本申请一实施例示出的不同角度值下的初始颜色贴图;

图15是根据本申请一实施例示出的光照环境贴图生成装置的框图;

图16是示出了适于用来实现本申请实施例的电子设备的结构示意图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。

此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。

附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。

需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

如背景技术所述,现有技术是通过现场采集的图片拼凑制作HDRI贴图,导入DCC(全称:Digital Content Creation,中文:数字内容生成)软件中渲染反射层,或在DCC软件中创建相应的简模,使用实拍的图片进行投射进而渲染出周围的环境,受限于前期拍摄的局限性,片场素材的采集可能存在一定的误差,比如曝光,拍摄机器,以及拍摄的颜色管理方案LUT是否与导演拍摄机器相匹配,影响最终的渲染出的模型的视觉效果。对于特效元素较多的场次镜头,前期片场环境的采集困难重重,并且重建模型进行投射这个过程相对比较耗时,工作量也比较大;而且现有技术的灵活性受限,当需要调整光照环境贴图时,需要重新采集新的图片重新拼凑制作HDRI贴图,修改复杂性较高。

基于此,为提升光照环境贴图生成方式的灵活性,同时提供便捷的光照环境贴图生成方式,本申请实施例提供一种光照环境贴图生成方法、装置、电子设备及可读存储介质,通过获取待渲染模型的法线贴图,基于法线贴图生成待渲染模型的光照环境贴图,不需要现场采集的图片拼凑制作HDRI贴图,光照环境贴图生成方式便捷程度高,并且通过初始颜色贴图对法线贴图中的颜色进行过滤,可以模拟不同光源下的光影效果,具有较高的灵活性。

为了便于理解本申请的技术方案,下面将结合实际应用场景对本申请提供的光照环境贴图生成方法、装置、电子设备及可读存储介质进行介绍。

请参阅图1,图1是本申请实施例提供的光照环境贴图生成方法的流程示意图,该方法可以由具备数据处理能力的电子设备执行,在此不进行具体限定。

参照图1所示,该方法至少包括步骤210至240,详细介绍如下:

步骤210,获取待渲染模型的法线贴图,以及素材贴图。

其中,待渲染模型可以是动画场景、游戏场景或者影视场景中需要渲染的物体模型,例如地形模型、建筑模型、道具模型、人物模型等。

法线贴图一种模拟凹凸处光照效果的技术,是凸凹贴图的一种实现。法线贴图可以在不添加多边形的前提下,为模型添加细节。常见的使用场景是为低多边形模型改善外观、添加细节,此时的法线贴图一般根据高多边形模型或高度贴图生成。示例性的,以待渲染模型为三维模型为例,如图2所示,图2是本申请实施例提供的待渲染模型的法线贴图示意图,其中图2中的(a)图为三维物体模型,图2中的(b)图为三维物体模型所对应的法线贴图。

素材贴图用于模拟周围的环境以及表征待渲染模型需要反射的素材图像,其包括但不限于材质贴图、环境贴图、光影贴图等。示例性的,如图3所示,图3是本申请实施例提供的素材贴图的示意图。

在一些实施方式中,法线贴图和素材贴图可以是通过外部设备输入的。

在一些实施方式中,可以响应于光照环境贴图生成指令,发送数据请求指令至服务器,获取服务器基于数据请求指令返回的待渲染模型的法线贴图,以及素材贴图。

在一些实施方式中,法线贴图可以是通过对待渲染模型的模型文件进行渲染生成的。其中,待渲染模型的模型文件可以是abc缓存文件、camera文件。其中,abc文件是以Alembic 3D格式存储的三维模型文件,支持动画、粒子等Bake(烘焙)三维场景的模型、流体、动画、特效等数据,可以输出输入到其他三维软件,Alembic支持常见的多种模型类型,包括多边形模型、细分面、曲线、NURBS曲面和粒子,还支持变换矩阵层级和摄像机。本申请实施例中的abc缓存文件包括了多边形模型和摄像机。

具体地,可以获取待渲染模型的模型文件,基于待渲染模型的模型文件进行渲染,得到待渲染模型的法线贴图。

可选的,以基于Nuke中生成光照环境贴图为例,其中,Nuke,一种视觉效果软件;在Nuke中导入基于DCC软件制作的待渲染模型的abc缓存文件、camera文件,通过Nuke中的scanlinerender插件对待渲染模型的abc缓存文件、camera文件进行渲染,得到待渲染模型的法线贴图,示例性的,如图4所示,图4是本申请实施例提供的基于模型文件进行渲染生成的法线贴图的示意图,其中,图4中的(a)图为渲染生成的法线贴图,图4中的(b)图是待渲染模型的模型线框显示图层。其中,DCC软件包括但不限于houdini,maya,max,cinema4D和blender等三维软件。

步骤220,根据法线贴图和素材贴图,得到初始环境贴图。

其中,初始环境贴图用于表征待渲染模型在没有添加光影效果时的环境贴图。

在一些实施方式中,可以将法线贴图和素材贴图相乘,得到初始环境贴图。

在一些实施方式中,可以将素材贴图映射到法线贴图中,得到初始环境贴图。可理解的,将素材贴图映射到法线贴图中是将素材贴图中像素点映射到法线贴图中。

步骤230,确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图。

其中,初始颜色贴图用于模拟不同颜色下的光照对法线贴图中的颜色进行过滤。颜色贴图是颜色过滤后的黑白信息图。示例性的,如图5所示,图5是本申请实施例提供的颜色过滤的示意图,其中,图5中的(a)图是待渲染模型的法线贴图,图5中的(b)图是初始颜色贴图,图5中的(c)图是图5中的(a)图和图5中的(b)图进行差异化运算后得到的颜色过滤后的颜色贴图。

在一些实施方式,初始颜色贴图可以是外部设备输入的;初始颜色贴图也可以是从服务器请求得到的;初始颜色贴图还可以是自动生成的。

可选的,可以发送图像请求指令至服务器,获取服务器基于图像请求指令返回的初始颜色贴图。

可选的,可以获取预设的虚拟光源信息,基于虚拟光源信息与待渲染模型的位置关系,确定待渲染模型的光照方向信息,基于光照方向信息生成初始颜色贴图。其中,虚拟光源信息包括虚拟光源的发光位置、以及虚拟光源的颜色信息。示例性的,可以通过(r,g,b)=((x,y,z)+1)/2将光照方向信息转换为RGB空间的像素信息,基于转换后的RGB空间的像素信息生成初始颜色贴图,其中,(r,g,b)为RGB空间的像素信息,r、g、b分别为RGB空间的像素信息的红色通道、绿色通道、蓝色通道下的分量值,(x,y,z)为光照方向信息,x、y、z分别为光照方向信息在三维坐标系下的三个方向对应的向量分量值。

可选的,可以获取RGB空间的像素信息,基于RGB空间的像素信息生成初始颜色贴图。其中,RGB空间的像素信息可以是外部设备输入的,也可以是用户基于光照环境贴图生成页面视图输入的。

在一些实施方式中,可以将初始颜色贴图与法线贴图进行相减,得到初始颜色贴图与法线贴图之间的颜色差异图像,将初始颜色贴图与法线贴图之间的颜色差异图像确定为待渲染模型的颜色贴图。

步骤240,根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图。

其中,光照环境贴图表征待渲染模型在光源照射区域下存在环境反射的贴图。

在一些实施方式中,可以将颜色贴图与初始环境贴图进行相乘,得到待渲染模型的光照环境贴图。示例性的,如图6所示,图6是本申请实施例提供的光照环境贴图生成的示意图,其中,图6中的(a)图为初始环境贴图,图6中的(b)图是颜色贴图,将图6中的(a)图和图6中的(b)图相乘,得到如图6中的(c)所示的待渲染模型的光照环境贴图。

在一些实施方式中,在得到待渲染模型的光照环境贴图后,可以基于待渲染模型的光照环境贴图对待渲染模型进行渲染。可理解的,可以采用现有的模型渲染方法,基于待渲染模型的光照环境贴图对待渲染模型进行渲染。

本申请实施例提供的光照环境贴图生成方法,通过获取待渲染模型的法线贴图,基于法线贴图生成待渲染模型的光照环境贴图,不需要现场采集的图片拼凑制作HDRI贴图,光照环境贴图生成方式便捷程度高,并且通过初始颜色贴图对法线贴图中的颜色进行过滤,可以模拟不同光源下的光影效果,具有较高的灵活性。

考虑到现有的光照环境贴图生成方法,需要通过现场采集的图片拼凑制作HDRI贴图,操作复杂,并且受到前期拍摄的局限性,片场素材的采集可能存在一定的误差,比如曝光,拍摄机器,以及拍摄的颜色管理方案LUT是否与导演拍摄机器相匹配,影响光照贴图的视觉效果,基于此,为提供便捷的光照环境贴图生成方法,同时提升生成的光照环境贴图的视觉效果,在一些实施方式中,获取素材贴图,将素材贴图映射到法线贴图中,得到初始环境贴图,并通过初始颜色贴图得到法线贴图在不同光影效果下的颜色贴图,基于颜色贴图和初始环境贴图,生成待渲染模型的光照环境贴图。

具体地,如图7所示,图7是本申请实施例提供的初始环境贴图生成方法的流程示意图,所示的初始环境贴图生成方法包括步骤221~223:

步骤221,对法线贴图进行数据转换,得到处理后的法线贴图。

其中,数据转换用于将法线贴图中颜色通道的数值转换为Nuke中STMap(Space-Time Map)可以读取的颜色数值。其中,STMap(Space-Time Map)用于将输入图像从一个空间坐标系映射到另一个空间坐标系,实现复杂变换。

在一些实施方式中,数据转换可以是归一化处理,也可以是角度转换,将法线贴图中颜色通道的数值转换为角度值后进行归一化处理。

可选的,当数据转换为角度转换时,可以通过预设的转换模型将法线贴图中颜色通道的数值转换为角度值;可选的,当数据转换为角度转换时,可以对法线贴图中颜色通道的数值进行弧度转换,得到颜色通道的弧度值,然后基于预设的角度与弧度之间的映射关系,将颜色通道的弧度值转换为角度值。其中,预设的转换模型可以是数学模型,例如线性函数,条件函数等。

具体地,如图8所示,图8是本申请实施例提供的数据转换方法的流程示意图,所示的数据转换方法包括步骤2211~2214:

步骤2211,获取法线贴图在目标颜色通道下的通道图像。

其中,目标颜色通道可以是法线贴图的R颜色通道、G颜色通道和B颜色通道中的至少一个;可理解的,目标颜色通道下的通道图像可以是R通道图像、G通道图像和B通道图像中任意一个。

示例性的,以目标颜色通道为R颜色通道和G颜色通道为例进行说明,可以对法线贴图进行颜色通道分解,得到R通道图像、G通道图像。

步骤2212,对通道图像的像素值进行弧度转换,得到通道图像的弧度值。

在一些实施方式中,当存在多个目标颜色通道下的通道图像时,对于不同目标颜色通道下的通道图像,可以采用相同的弧度变换函数对该目标颜色通道下的通道图像的像素值进行弧度转换,得到通道图像的弧度值。

在一些实施方式中,当存在对各目标颜色通道下的通道图像时,对于不同目标颜色通道下的通道图像,可以采用不同的弧度变换函数对该目标颜色通道下的通道图像的像素值进行弧度转换,得到通道图像的弧度值。

示例性的,以不同的目标颜色通道下的通道图像采用不同的弧度变换函数为例进行说明,当目标颜色通道为R颜色通道、G颜色通道时,可以根据法线贴图中每个像素点在R颜色通道下的分量值r以及B颜色通道下的分量值b,通过atan(b/r)和atan(r/b)得到该像素点的第一反正切值f1和第二反正切值f2,将B颜色通道下的通道图像的弧度值设置为0。

针对于R颜色通道,确定该像素点在B颜色通道下的分量值b是否大于0,若该像素点在B颜色通道下的分量值b大于0,且该像素点在R颜色通道下的分量值r大于0,则将第一反正切值f1确定为该像素点在R颜色通道下的弧度值;若该像素点在B颜色通道下的分量值b大于0,且该像素点在R颜色通道下的分量值r小于或等于0,则通过π+第一反正切值f1得到该像素点在R颜色通道下的弧度值;若该像素点在B颜色通道下的分量值b小于或等于0,且该像素点在R颜色通道下的分量值r大于0,则通过(3*π/2)*f2得到该像素点在R颜色通道下的弧度值;若该像素点在B颜色通道下的分量值b小于或等于0,且该像素点在R颜色通道下的分量值r小于或等于0,则通过(2*π)+f1得到该像素点在R颜色通道下的弧度值,基于各像素点在R颜色通道下的弧度值,得到R颜色通道下的通道图像的弧度值。

针对于G颜色通道,该像素点在G颜色通道下的分量值g,通过asin(g)确定该分量值的反正弦值,将该分量值的反正弦值确定为该像素点在G颜色通道下的弧度值,基于各像素点在G通道下的弧度值,得到G颜色通道下的通道图像的弧度值。

步骤2213,根据预设的角度与弧度之间的映射关系,对通道图像的弧度值进行角度转换,得到通道图像的角度值。

其中,预设的角度与弧度之间的映射关系用于指示角度与对应的弧度之间的映射函数,在一些实施方式中,预设的角度与弧度之间的映射关系可以是映射函数,例如Nuke中的degress函数,其中,degress函数用于将弧度值转换为以角度为单位的浮点数。

步骤2214,对通道图像的角度值进行归一化处理,得到处理后的法线贴图。

其中,归一化处理用于将通道图像的角度值归一化到0到1之间。

示例性的,以目标颜色通道为R颜色通道、G颜色通道为例进行说明,对于R颜色通道下的通道图像的角度值,可以通过(R颜色通道下的通道图像的角度值)/360对R颜色通道下的通道图像的角度值进行归一化处理,得到归一化后的R颜色通道下的通道图像;对于G颜色通道下的通道图像的角度值,可以通过(G颜色通道下的通道图像的角度值+90)/180对G颜色通道下的通道图像的角度值进行归一化处理,得到归一化后的G颜色通道下的通道图像,将归一化后的G颜色通道下的通道图像、归一化后的R颜色通道下的通道图像以及B颜色通道下的通道图像进行通道重组,得到处理后的法线贴图。示例性的,如图9所示,图9是本申请实施例提供的数据转换的示意图,其中,图9中的(a)图为法线贴图,按照上述步骤2211~2214对图9中的(a)图进行数据转换,得到如图9中的(b)图所示的处理后的法线贴图。

步骤222,确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系。

其中,坐标映射关系用于指示素材贴图中像素点的坐标映射到处理后的法线贴图中时所对应的坐标。

在一些实施方式中,可以获取素材贴图的中心像素点的坐标,以及处理后的法线贴图的中心像素点的坐标,基于素材贴图的中心像素点的坐标以及处理后的法线贴图的中心像素点的坐标进行拟合,得到确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系。

在一些实施方式中,可以调用Nuke中预设的图像交换工具,对素材贴图以及处理后的法线贴图进行坐标变换,确定素材贴图所对应的坐标与处理后的法线贴图所对应的坐标之间的坐标映射关系。

可选的,预设的图像交换工具可以是STMap。示例性的,如图10所示,图10是本申请实施例提供的基于STMap的坐标变换的示意图,素材贴图中每一个像素点对应有一个坐标,处理后的法线贴图中每个像素点也对应有一个坐标,通过STMap将素材贴图和处理后的法线贴图进行像素点匹配,确定素材贴图所对应的坐标与处理后的法线贴图所对应的坐标之间的坐标映射关系,如图10所示,处理后的法线贴图中猪鼻子位置上的像素点对应于素材贴图为G4对应的像素点。

步骤223,根据坐标映射关系,将素材贴图中的像素点映射到处理后的法线贴图中,得到初始环境贴图。

在一些实施方式中,根据坐标映射关系,确定素材贴图中每个像素点映射到处理后的法线贴图中所对应的目标坐标,将素材贴图中每个像素点赋值给处理后的法线贴图中所对应的目标坐标上,得到初始环境贴图。示例性的,如图11所示,图11是本申请实施例提供的初始环境贴图生成方法的示意图,素材贴图和处理后的法线贴图输入STMap,通过STMap建立坐标映射关系,基于坐标映射关系将素材贴图中的像素点映射到处理后的法线贴图中,得到初始环境贴图。

本申请实施例提供的初始环境贴图生成方法,通过将素材贴图映射到处理后的法线贴图上进行初始环境贴图的生成,不需要前期跟组采集片场来获得场次环境,并且在需要调整光照环境贴图的环境时,可以直接更换新的素材贴图,修改方式便捷。

考虑到现有的光照环境贴图生成方法是需要采用前期跟组采集片场来获得场次环境来制作HDRI贴图,当贴图中包含烟雾爆破等动态元素较多的复杂镜头,这个过程的制作难度会大大增加,修改渲染成本也会比较高,基于此,为提升光照环境贴图生成方法的便捷性,同时降低光照环境贴图修改的复杂程度,在一些实施方式中,通过初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像模拟出待渲染模型在光源下的光影效果,提升光照环境贴图生成方法的便捷性,当需要修改光影效果时,仅需要调整初始颜色贴图,如此降低光照环境贴图修改的复杂程度。

具体地,如图12所示,图12是本申请实施例提供的颜色贴图生成方法的流程示意图,所示的颜色贴图生成方法包括步骤231~232:

步骤231,确定各颜色通道的弧度值,基于各颜色通道的弧度值生成初始颜色贴图。

在一些实施方式中,可以输出光照环境贴图生成页面视图,获取用户基于光照环境贴图生成页面视图输入的各颜色通道的弧度值。

在一些实施方式中,可以获取各颜色通道的角度值,基于预设的角度与弧度之间的映射关系对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值。可选的,各颜色通道的角度值可以是用户输入的,也可以是根据虚拟光源信息生成的。

实施例的,以各颜色通道的角度值是用户输入为例进行说明,如图13所示,图13是本申请实施例提供的初始颜色贴图生成方法的流程示意图,所示的初始颜色贴图生成方法包括步骤2311~2313:

步骤2311,获取各颜色通道的角度值,对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值。

在一些实施方式中,可以通过预设的角度与弧度之间的映射关系对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值。

在一些实施方式中,可以通过Nuke中的radians()函数对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值。其中,radians()函数是可返回以度数表示的角度的弧度的函数。

步骤2312,对各颜色通道的弧度值进行归一化,得到各处理后的颜色通道。

在一些实施方式中,可以通过sin函数和cos函数对各颜色通道的弧度值进行归一化,将对各颜色通道的弧度值归一化到-1到1之间,得到各处理后的颜色通道。

示例性的,颜色通道的角度值包括第一角度值polar_height和第二角度值equator_angle为例进行说明,对于R颜色通道,通过cos(radians(polar_height))*cos(radians(equator_angle))得到处理后的R颜色通道,对于G颜色通道,通过sin(radians(polar_height))得到处理后的G颜色通道,对于B颜色通道,通过sin(radians(equator_angle))*cos(radians(polar_height))得到处理后的B颜色通道。

步骤2313,组合各处理后的颜色通道,生成初始颜色贴图。

示例性的,如图14所示,图14是本申请实施例提供的不同角度值下的初始颜色贴图,其中。图14中的(a)图是第一角度值polar_height和第二角度值equator_angle分别为53.2和10.6时的初始颜色贴图;图14中的(b)图是第一角度值polar_height和第二角度值equator_angle分别为25和50时的初始颜色贴图;图14中的(c)图是第一角度值polar_height和第二角度值equator_angle分别为25和100时的初始颜色贴图;图14中的(d)图是第一角度值polar_height和第二角度值equator_angle分别为100和0时的初始颜色贴图。

步骤232,将初始颜色贴图与法线贴图进行差分处理,得到初始颜色贴图与法线贴图之间的颜色差异图像,将颜色差异图像确定为待渲染模型的颜色贴图。

本申请实施例提供的颜色贴图生成方法,通过获取颜色通道的角度值,基于颜色通道的角度值可以生成不同颜色光源下的光影效果,如此,当需要调整待渲染模型的光影效果时,仅需要调整每个颜色通道的角度值,修改方式便捷。

在一些实施方式中,在生成待渲染模型的颜色贴图后,基于待渲染模型的颜色贴图,按照上述步骤240对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图。

本申请实施例提供的光照环境贴图生成方法,通过获取待渲染模型的法线贴图,基于法线贴图生成待渲染模型的光照环境贴图,不需要现场采集的图片拼凑制作HDRI贴图,光照环境贴图生成方式便捷程度高,并且通过初始颜色贴图对法线贴图中的颜色进行过滤,可以模拟不同光源下的光影效果,具有较高的灵活性。

下面介绍本申请的装置实施例,可以用于执行上述实施例中的方法,对于本申请装置实施例中未披露的细节,请参照本申请上述方法实施例。

如图15所示,图15是本申请实施例提供的光照环境贴图生成装置的框图,该光照环境贴图生成装置包括:

贴图获取模块11,用于获取待渲染模型的法线贴图,以及素材贴图;

贴图映射模块12,用于根据法线贴图和素材贴图,得到初始环境贴图;

颜色贴图确定模块13,用于确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图;

贴图生成模块14,用于根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图。

在一些实施方式中,贴图映射模块12,用于:

对法线贴图进行数据转换,得到处理后的法线贴图;

确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系;

根据坐标映射关系,将素材贴图中的像素点映射到处理后的法线贴图中,得到初始环境贴图。

在一些实施方式中,贴图映射模块12,用于:

获取法线贴图在目标颜色通道下的通道图像;

对通道图像的像素值进行弧度转换,得到通道图像的弧度值;

根据预设的角度与弧度之间的映射关系,对通道图像的弧度值进行角度转换,得到通道图像的角度值;

对通道图像的角度值进行归一化处理,得到处理后的法线贴图。

在一些实施方式中,贴图映射模块12,用于:

调用预设的图像交换工具,对素材贴图以及处理后的法线贴图进行坐标变换,确定素材贴图所对应的坐标与处理后的法线贴图所对应的坐标之间的坐标映射关系。

在一些实施方式中,颜色贴图确定模块13,用于:

确定各颜色通道的弧度值,基于各颜色通道的弧度值生成初始颜色贴图;

将初始颜色贴图与法线贴图进行差分处理,得到初始颜色贴图与法线贴图之间的颜色差异图像,将颜色差异图像确定为待渲染模型的颜色贴图。

在一些实施方式中,颜色贴图确定模块13,用于:

获取各颜色通道的角度值,对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值;

对各颜色通道的弧度值进行归一化,得到各处理后的颜色通道;

组合各处理后的颜色通道,生成初始颜色贴图。

在一些实施方式中,贴图获取模块11,用于:

获取待渲染模型的模型文件;

基于待渲染模型的模型文件进行渲染,得到待渲染模型的法线贴图。

在一些实施方式中,贴图生成模块14,用于将颜色贴图与初始环境贴图进行相乘,得到待渲染模型的光照环境贴图。

本申请实施例提供的光照环境贴图的生成装置,通过获取待渲染模型的法线贴图,基于法线贴图生成待渲染模型的光照环境贴图,不需要现场采集的图片拼凑制作HDRI贴图,光照环境贴图生成方式便捷程度高,并且通过初始颜色贴图对法线贴图中的颜色进行过滤,可以模拟不同光源下的光影效果,具有较高的灵活性。

图16是根据本申请一实施例示出的电子设备的结构示意图。该电子设备可以是服务器,当然,还可以是其他可以用于执行本申请所提供的光照环境贴图生成方法的设备。

如图16所示,可以包括光照环境贴图生成装置10、存储器20、处理器30以及通信单元40,存储器20存储有处理器30可执行的机器可读指令,当电子设备运行时,处理器30及存储器20之间通过总线通信,处理器30执行机器可读指令,并执行光照环境贴图生成方法。

存储器20、处理器30以及通信单元40各元件相互之间直接或间接地电性连接,以实现信号的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。光照环境贴图生成装置10包括至少一个可以软件或固件(firmware)的形式存储于存储器20中的软件功能模块。处理器30用于执行存储器20中存储的可执行模块(例如光照环境贴图生成装置10所包括的软件功能模块或计算机程序)。

其中,存储器20可以是,但不限于,随机读取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。

可选的,处理器30用以执行本实施例中描述的一个或多个功能。可选的,处理器30可以包括一个或多个处理核(例如,单核处理器(S)或多核处理器(S))。仅作为举例,处理器30可以包括中央处理单元(Central Processing Unit,CPU)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、专用指令集处理器(Application SpecificInstruction-setProcessor,ASIP)、图形处理单元(Graphics Processing Unit,GPU)、物理处理单元(Physics Processing Unit,PPU)、数字信号处理器(Digital SignalProcessor,DSP)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、可编程逻辑器件(Programmable Logic Device,PLD)、控制器、微控制器单元、简化指令集计算机(ReducedInstruction Set Computing,RISC)或微处理器等,或其任意组合。

为了便于说明,在电子设备中仅描述了一个处理器。然而,应当注意,本实施例中的电子设备还可以包括多个处理器,因此本实施例中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。例如,若服务器的处理器执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同的处理器共同执行或者在一个处理器中单独执行。例如,处理器执行步骤A,第二处理器执行步骤B,或者处理器和第二处理器共同执行步骤A和B。

本实施例中,存储器20用于存储程序,处理器30用于在接收到执行指令后,执行程序。本实施例任一实施方式所揭示的流程定义的方法可以应用于处理器30中,或者由处理器30实现。

通信单元40用于通过网络建立电子设备与其他设备之间的通信连接,并用于通过网络收发数据。

进一步的,在本申请的一些实施例中,网络可以是任何类型的有线或者无线网络,或者是他们的结合。仅作为示例,网络可以包括有线网络、无线网络、光纤网络、远程通信网络、内联网、因特网、局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)、无线局域网(Wireless Local Area Networks,WLAN)、城域网(Metropolitan AreaNetwork,MAN)、广域网(Wide Area Network,WAN)、公共电话交换网(Public SwitchedTelephone Network,PSTN)、蓝牙网络、ZigBee网络、或近场通信(Near FieldCommunication,NFC)网络等,或其任意组合。

在本实施例中,电子设备可以是但不限于笔记本电脑、移动终端、个人计算机、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等电子设备,本实施例对电子设备的具体类型不作任何限制。

尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器20中,并由处理器30来运行存储在存储器20中的应用程序,从而实现各种功能,如下:

获取待渲染模型的法线贴图,以及素材贴图;

根据法线贴图和素材贴图,得到初始环境贴图;

确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图;

根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图。

在一些实施方式中,根据法线贴图和素材贴图,得到初始环境贴图,包括:

对法线贴图进行数据转换,得到处理后的法线贴图;

确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系;

根据坐标映射关系,将素材贴图中的像素点映射到处理后的法线贴图中,得到初始环境贴图。

在一些实施方式中,对法线贴图进行数据转换,得到处理后的法线贴图,包括:

获取法线贴图在目标颜色通道下的通道图像;

对通道图像的像素值进行弧度转换,得到通道图像的弧度值;

根据预设的角度与弧度之间的映射关系,对通道图像的弧度值进行角度转换,得到通道图像的角度值;

对通道图像的角度值进行归一化处理,得到处理后的法线贴图。

在一些实施方式中,确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系,包括:

调用预设的图像交换工具,对素材贴图以及处理后的法线贴图进行坐标变换,确定素材贴图所对应的坐标与处理后的法线贴图所对应的坐标之间的坐标映射关系。

在一些实施方式中,确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图,包括:

确定各颜色通道的弧度值,基于各颜色通道的弧度值生成初始颜色贴图;

将初始颜色贴图与法线贴图进行差分处理,得到初始颜色贴图与法线贴图之间的颜色差异图像,将颜色差异图像确定为待渲染模型的颜色贴图。

在一些实施方式中,确定各颜色通道的弧度值,基于各颜色通道的弧度值生成初始颜色贴图,包括:

获取各颜色通道的角度值,对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值;

对各颜色通道的弧度值进行归一化,得到各处理后的颜色通道;

组合各处理后的颜色通道,生成初始颜色贴图。

在一些实施方式中,获取待渲染模型的法线贴图,包括:

获取待渲染模型的模型文件;

基于待渲染模型的模型文件进行渲染,得到待渲染模型的法线贴图。

在一些实施方式中,根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图,包括:

将颜色贴图与初始环境贴图进行相乘,得到待渲染模型的光照环境贴图。

根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当计算机可读指令被处理器执行时,实现如上任一方法实施例中的光照环境贴图生成方法。例如,该计算机可读指令可以执行如下步骤:

获取待渲染模型的法线贴图,以及素材贴图;

根据法线贴图和素材贴图,得到初始环境贴图;

确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图;

根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图。

在一些实施方式中,根据法线贴图和素材贴图,得到初始环境贴图,包括:

对法线贴图进行数据转换,得到处理后的法线贴图;

确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系;

根据坐标映射关系,将素材贴图中的像素点映射到处理后的法线贴图中,得到初始环境贴图。

在一些实施方式中,对法线贴图进行数据转换,得到处理后的法线贴图,包括:

获取法线贴图在目标颜色通道下的通道图像;

对通道图像的像素值进行弧度转换,得到通道图像的弧度值;

根据预设的角度与弧度之间的映射关系,对通道图像的弧度值进行角度转换,得到通道图像的角度值;

对通道图像的角度值进行归一化处理,得到处理后的法线贴图。

在一些实施方式中,确定素材贴图中像素点所对应的坐标与处理后的法线贴图中像素点所对应的坐标之间的坐标映射关系,包括:

调用预设的图像交换工具,对素材贴图以及处理后的法线贴图进行坐标变换,确定素材贴图所对应的坐标与处理后的法线贴图所对应的坐标之间的坐标映射关系。

在一些实施方式中,确定初始颜色贴图,基于初始颜色贴图与法线贴图之间的颜色差异图像,得到待渲染模型的颜色贴图,包括:

确定各颜色通道的弧度值,基于各颜色通道的弧度值生成初始颜色贴图;

将初始颜色贴图与法线贴图进行差分处理,得到初始颜色贴图与法线贴图之间的颜色差异图像,将颜色差异图像确定为待渲染模型的颜色贴图。

在一些实施方式中,确定各颜色通道的弧度值,基于各颜色通道的弧度值生成初始颜色贴图,包括:

获取各颜色通道的角度值,对各颜色通道的角度值进行弧度转换,确定各颜色通道的弧度值;

对各颜色通道的弧度值进行归一化,得到各处理后的颜色通道;

组合各处理后的颜色通道,生成初始颜色贴图。

在一些实施方式中,获取待渲染模型的法线贴图,包括:

获取待渲染模型的模型文件;

基于待渲染模型的模型文件进行渲染,得到待渲染模型的法线贴图。

在一些实施方式中,根据颜色贴图对初始环境贴图进行像素着色,得到待渲染模型的光照环境贴图,包括:

将颜色贴图与初始环境贴图进行相乘,得到待渲染模型的光照环境贴图。

需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。

本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

相关技术
  • 网页生成方法、装置、电子设备及计算机可读存储介质
  • 特征生成方法、装置、电子设备及计算机可读存储介质
  • 模型生成方法、装置、电子设备和计算机可读存储介质
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 图片生成方法、服务器、电子设备及可读存储介质
  • 生成光照贴图的方法、装置、存储介质及电子设备
  • 生成光照贴图的方法、装置、存储介质及电子设备
技术分类

06120116487533