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

模型渲染方法、装置和电子设备

文献发布时间:2023-06-19 19:14:59


模型渲染方法、装置和电子设备

技术领域

本发明涉及模型处理技术领域,尤其是涉及一种模型渲染方法、装置和电子设备。

背景技术

相关技术中,通常通过顶点动画实现模型全息错位效果,该顶点动画是逐顶点模型拉伸位移动画,使模型的每个顶点按照规律或输入的距离进行移动,从而使模型的表面进行凹凸运动。但是顶点动画的流畅度和效果,与顶点动画复杂度、模型顶点数成正相关;同时顶点动画需要消耗大量的模型材质性能,导致手游无法通过顶点动画实现模型全息错位效果。

发明内容

本发明的目的在于提供一种模型渲染方法、装置和电子设备,以较小模型全息错位效果实现的性能消耗,并提高模型全息错位效果的质量。

第一方面,本发明提供了一种模型渲染方法,该方法包括:获取待渲染模型;对待渲染模型进行遮罩处理,得到遮罩模型;其中,遮罩模型用于模拟待渲染模型的全息错位效果;基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。

第二方面,本发明提供了一种模型渲染装置,该装置包括:模型获取模块,用于获取待渲染模型;遮罩处理模块,用于对待渲染模型进行遮罩处理,得到遮罩模型;其中,遮罩模型用于模拟待渲染模型的全息错位效果;模型嵌套模块,用于基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。

第三方面,本发明提供了一种电子设备,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现上述模型渲染方法。

第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现上述模型渲染方法。

本发明实施例带来了以下有益效果:

本发明提供的一种模型渲染方法、装置和电子设备,首先获取待渲染模型;进而对待渲染模型进行遮罩处理,得到遮罩模型,该遮罩模型用于模拟所述待渲染模型的全息错位效果;然后基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。该方式中,使用两层模型嵌套来制作出一种假的单个模型全息错位效果,可让待渲染模型拥有全息错位效果,且由于是遮罩模型是立体的,则全息错位效果也是立体的,而非单薄的面片错位,从而提高了模型全息错位效果的质量;同时,该方式相对顶点动画的方式性能消耗较少,可在手游端实现模型全息错位效果。

本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。

附图说明

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

图1为本发明实施例提供的一种模型渲染方法的流程图;

图2为本发明实施例提供的一种模型渲染的示意图;

图3为本发明实施例提供的另一种模型渲染方法的流程图;

图4为本发明实施例提供的一种偏移参数确定的流程图;

图5为本发明实施例提供的另一种模型渲染方法的流程图;

图6为本发明实施例提供的一种错位故障效果的示意图;

图7为本发明实施例提供的一种模型渲染装置的结构示意图;

图8为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

相关技术中,提供了三种实现模型错位闪屏效果的方法:

第一种,使用序列帧动画输出一张序列帧图,然后使用通用算法翻书效果播放序列帧图,在播放序列帧图的过程中增加广告牌效果(该广告牌效果又称Billboard效果,是一种材质形式,表现形式为模型的面片始终朝向摄像机)和错位的偏移遮罩效果,则可生成错位闪屏效果。该方式基本满足错位闪屏效果,但是无法基于模型进行错位闪屏,本质上还是基于图片的闪屏模式,只不过是通过序列帧(该序列帧通常是把视频用一帧一帧的图像文件来表示)播放,并且拥有广告牌效果,制造模型全息效果的错觉,如果模型序列帧要求数量大,那么平摊下来模型的贴图效果就会非常模糊,美术品质不能完全达标。

第二种,单张图片的错位闪屏效果,与第一种方案序列帧动画错位闪屏效果的区别是不使用序列帧,只使用单张图。但是单张图的错位闪屏效果,也可理解为单帧图片(第一种方案中的一帧),同样使用广告牌效果,但是当移动视角时就会暴露其是一张图,而不是一个模型效果。

第二种,通过顶点动画实现模型全息错位效果,该顶点动画是逐顶点模型拉伸位移动画,使模型的每个顶点按照规律或输入的距离进行移动,从而使模型的表面进行凹凸运动。但是顶点动画的流畅度和效果,与顶点动画复杂度、模型顶点数成正相关;同时顶点动画需要消耗大量的模型材质性能,导致手游端无法通过顶点动画实现模型全息错位效果。

基于上述问题,本发明实施例提供了一种模型渲染方法、装置和电子设备,该技术可以应用于各种模型的渲染场景中,尤其是模型全息错位效果渲染的场景中。

为了便于对本发明实施例进行理解,首先对本发明实施例公开的一种模型渲染方法进行详细介绍,如图1所示,该方法包括如下具体步骤:

步骤S102,获取待渲染模型。

上述待渲染模型可以是通过模型制作软件绘制的任意模型,也可以是从预设模型存储文件中传入的模型。该待渲染模型通常是三维立体模型,且该待渲染模型的颜色和材质可以根据研发需求设定。在实际应用中,为了节省性能消耗、保证模型渲染方式可在手机端实现,该待渲染模型可以设置为自发光材质的模型,该自发光材质的模型通常是一种只显示图片的光照模型,不带任何光影信息效果,是最省性能的一种基础材质模型。

步骤S104,对上述待渲染模型进行遮罩处理,得到遮罩模型;其中,该遮罩模型用于模拟待渲染模型的全息错位效果。

在具体实现时,上述遮罩处理可以是采用预设的遮罩图对待渲染模型进行遮罩,也可以是利用条纹图对待渲染模型进行遮罩,还可以通过游戏引擎中设置的预设遮罩模式对待渲染模型进行遮罩处理,还可以是其他遮罩处理方式在此不做具体限定。具体地,上述预设遮罩模式可以为:输出的模型的透明部分是像遮罩效果一样,切割状,而不是半透明的过度效果。

上述全息错位效果是指三维模型中的立体的、非单薄的面片的错位效果,这里的错位是指三维模型在三维空间上的形状看起来会有一定的错位。需要说明的是,本发明所指的全息错位效果是基于游戏中实现的表现效果。如图2中的左侧的图像为具有全息错位效果的模型。

步骤S106,基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。

上述偏移参数可以是用户自定义的参数,也可以是根据预设循环曲线和预设偏移值确定出的偏移参数。该偏移参数用于指示遮罩模型嵌套在待渲染模型上之后,遮罩模型在待渲染模型上移动时的偏移移动规律。其中,遮罩模型按照偏移参数指示的偏移移动规律在待渲染模型上移动,即可实现模型的全息错位效果。如图2所示为本发明实施例提供的一种模型渲染的示意图,图2中间的糖果模型为待渲染模型,图2中的右侧的图像为遮罩模型,该遮罩模型也即是待渲染模型遮罩一部分区域之后的模型,图2中的左侧的图像为具有全息错位效果的目标模型,该目标模型也即是遮罩模型嵌套在待渲染模型上的效果,该遮罩模型可以在待渲染模型的外层上下左右不规则的移动,从而实现模型全息错位效果。

本发明实施例提供的一种模型渲染方法,首先获取待渲染模型;进而对待渲染模型进行遮罩处理,得到遮罩模型,该遮罩模型用于模拟所述待渲染模型的全息错位效果;然后基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。该方式中,使用两层模型嵌套来制作出一种假的单个模型全息错位效果,可让待渲染模型拥有全息错位效果,且由于是遮罩模型是立体的,则全息错位效果也是立体的,而非单薄的面片错位,从而提高了模型全息错位效果的质量;同时,该方式相对顶点动画的方式性能消耗较少,可在手游端实现模型全息错位效果。

本发明实施例还提供了另一种模型渲染方法,该方法在上述实施例的基础上实现,该方法重点描述基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型的具体过程(具体通过下述步骤S306-S308实现);如图3所示,该方法包括如下具体步骤:

步骤S302,获取待渲染模型。

步骤S304,对上述待渲染模型进行遮罩处理,得到遮罩模型;其中,该遮罩模型用于模拟待渲染模型的全息错位效果。

步骤S306,将预设的偏移参数链接至待渲染模型的材质面板。

在具体实现时,上述偏移参数可以通过下述步骤10-12确定:

步骤10,通过预设时间参数对预设循环曲线循环调动处理,得到处理结果。

上述预设时间参数是根据用户需求设置,该预设时间参数用于控制预设循环曲线的流动速度;上述预设循环曲线可以是sin曲线或者cos曲线等。具体地,上述步骤10可以通过下述步骤20-22实现:

步骤20,通过预设时间参数调用预设循环曲线。

步骤21,对预设循环曲线进行三角运算,得到三角曲线。该三角运算可以是正弦运算、余弦运算或者正切运算等。具体地,对预设循环曲线进行正弦运算,得到正弦曲线;对预设循环曲线进行预先运算得到余弦曲线;对预设循环曲线进行正切运算,得到正切曲线。

步骤22,将正弦曲线的绝对值确定为处理结果。

为了便于为本发明实施例进行理解,如图4所示为本发明实施例提供的一种偏移参数确定的流程图,图4中的Time节点会一直计算时间,使时间流动,Time-trans节点可以控制时间的流速,从而控制循环曲线流动速度;将Time节点的输出和Time-trans节点的输出相乘(相当于将Time节点的输出和Time-trans节点的输出输入至Multiply节点),得到预设时间参数。然后通过预设时间参数调用预设循环曲线,并对预设循环曲线进行正弦运算,也即是将预设循环曲线输入至Sine节点,输出正弦曲线。然后将正弦曲线输入至Abs节点,以取正弦曲线的绝对值,将正弦曲线的绝对值确定为处理结果,该处理结果可以是0-1,1-0,0-1,…等。

步骤11,将上述处理结果与预设曲线图谱进行映射处理,得到曲线规律参数。

在具体实现时,将处理结果输入至包含有预设曲线图谱的Curve节点,以对处理结果与预设曲线图谱进行映射处理,得到曲线规律参数。该预设曲线图谱可以是美术人员在游戏引擎内自定义编辑得到的,美术人员可以通过曲线图谱工具自定义编辑得到任何曲线;在映射处理时,预设曲线图谱可以按照处理结果中的0-1输入,输出对应的曲线数值,该曲线数值也即是美术人员自定义规律错位数值,也可以称为曲线规律参数。

在实际应用中,可以在得到曲线规律参数后,将该曲线规律参数转换到指定数值范围内,得到最终的曲线规律参数。上述指定数值范围可以根据研发需求设置,例如,该指定数值范围可以是0-1的范围,还可以是0-2的范围等。如图4所示,可以在得到曲线规律参数后,将曲线规律参数输入至Saturate节点,该Saturate节点会将曲线规律参数转换到0-1的范围,以确保最终的曲线规律参数均为正值。

步骤12,将上述曲线规律参数与预设偏移值相乘,得到偏移参数。

在具体实现时,上述预设偏移值是美术人员给出的自定义上下左右偏移值,该预设偏移值可以通过下述步骤30-32确定:

步骤30,基于预设的轴向偏移大小参数,将待渲染模型所在坐标轴的轴向变换为与摄像机视角相匹配的目标轴向,并得到目标轴向下的偏移值。

美术人员通过调控轴向偏移大小参数,来得到最红的预设偏移值。具体地,轴向偏移大小参数可以用图4中的Move_Vertex_Trans节点的输出表征,该Move_Vertex_Trans节点为一个3通道的颜色值,通过RGB三通道的颜色控制约束整体的偏移值。根据轴向偏移大小参数可以对模型轴向进行转换,以将待渲染模型所在坐标轴的轴向变换为与摄像机视角相匹配的目标轴向,该摄像机视角也即是观众视角,该轴向转换能够更好的根据观众视角表现偏移效果。

例如,轴向偏移大小参数为1,0,0就是R=1,G=0,B=0,将该值转换成到相机视角方向,可根据相机视角的上下左右控制轴向方向,其中,轴向偏移大小参数为1,0,0则意为着:模型只会在相机视角的左边右边方向循环错位位移;如果轴向偏移大小参数是0,1,0则意为着:模型只会在相机视角的上下方向循环错位位移;如果轴向偏移大小参数是0,0,1则意为着:模型只会在相机视角的前后方向循环错位位移。

步骤31,对目标轴向下的偏移值取反,得到第一偏移值。

在图4中,对目标轴向下的偏移值取反,也即是将目标轴向下的偏移值输入至1-x节点中,输出取反结果,该取反结果相当于上述第一偏移值。

步骤32,对第一偏移值和目标轴向下的偏移值进行线性插值运算,得到预设偏移值。

在具体实现时,将第一偏移值和目标轴向下的偏移值输入至线性插值节点Lerp节点,输出预设偏移值。其中,Lerp节点是为了让曲线输入后模型的偏移能够左右取反随机,让模型错位算法更加自然,该Lerp节点输入Alpha0输出A,输入Alpha1输出B,输入Alpha中间值0-1输出AB混合结果,其中A和B分别表示输入至Lerp节点中的第一偏移值和目标轴向下的偏移值。

步骤S308,通过材质面板,将上述遮罩模型嵌套在待渲染模型上,并根据偏移参数控制遮罩模型在待渲染模型上的移动位置,得到具有全息错位效果的目标模型。

通过材质面板上的偏移参数可以控制遮罩模型在待渲染模型上进行移动时,随着时间的流动,遮罩模型在待渲染模型上的移动位置,从而可以表现出具有全息错位效果的目标模型。具体地,该目标模型中包含有待渲染模型和在该待渲染模型的外层嵌套的遮罩模型。

在具体实现时,由于待渲染模型和遮罩模型使用的是同一个母材质(也即是自发光材质),而用户想要已遮罩材质拥有顶点动画功能左右移动等效果使,自发光材质无顶点动画功能。因此,本放添加Trans开关内容(Trans为自定义命名),区分想要增加的效果。Trans开关是为了让两层模型的一个打开顶点动画位移效果,一个关闭顶点动画位移效果。(switch开关,Trans为开关参数,当Trans为真,则去True链接内容,为否,则去0.无顶点动画位移参数。)

上述模型渲染方法,首先获取待渲染模型;进而对待渲染模型进行遮罩处理,得到遮罩模型;再将预设的偏移参数链接至待渲染模型的材质面板步骤;然后通过材质面板,将上述遮罩模型嵌套在待渲染模型上,并根据偏移参数控制遮罩模型在待渲染模型上的移动位置,得到具有全息错位效果的目标模型。该方式使用两个基础模型,使用遮罩渲染模式,遮罩错位将模型遮罩部分,向左或者向右错位,模拟模型的全息错位效果。同时,该方式使用了最简单的左右移动算法,通过曲线让其随机,且根据相机视角让错位效果更加自然,以使该方案能够最大保障效果与性能。

本发明实施例还提供了另一种模型渲染方法,该方法在上述实施例的基础上实现,该方法重点描述对待渲染模型进行遮罩处理,得到遮罩模型的具体过程(具体通过下述步骤S504-S508实现);如图5所示,该方法包括如下具体步骤:

步骤S502,获取待渲染模型。

步骤S504,获取预设条纹图,将预设条纹图的亮度增加指定数值,得到第一条纹图。

上述指定数值的具体数值可以根据研发需求设定,例如,该指定数值可以是0.2或者0.3等。上述预设条纹图可以是美术人员自定义的,还可以是根据预设时间参数得到的。在具体实现时,上述预设条纹图可以通过下述步骤40-41实现:

步骤40,通过预设时间曲线循环移动屏幕纹理图,生成具有纹理流动效果的目标纹理图。

上述预设时间曲线是通过Time节点得到的,以循环规律移动屏幕纹理图,得到具有纹理流动效果的目标纹理图。上述屏幕纹理图通常是指屏幕UV,也即是用于显示待渲染模型的屏幕的UV;其中,纹理坐标通常具有U和V两个坐标轴,因此称之为UV坐标,U代表横向坐标上的分布、V代表纵向坐标上的分布,三维建模中的UV可理解为立体模型的“皮肤”,将“皮肤”展开然后进行二维平面上的绘制并赋予物体;一张图的颜色可以分为RGB意思是红蓝绿的缩写,一张有颜色的图也可以区分为RGB三个通道,意为红色颜色占比,蓝色颜色占比,绿色颜色占比;在引擎中UV只有红绿两个通道,U就是UV图的R通道,V就是UV图的G通道。

这里将预设时间曲线混合入条纹效果,则可使得后续随着遮罩模型的偏移,遮罩的效果与之有对应的遮罩效果,该做法可以让遮罩效果更加贴合自定义错位效果。

步骤41,将上述目标纹理图与预设的黑白条纹图结合,得到具有条纹流动效果的预设条纹图。

上述黑白条纹图是美术人员根据需求输入的,通过具有纹理流动效果的目标纹理图对黑白条纹图采样,可以让黑白条纹图中的条纹动起来。

步骤S506,将上述预设条纹图与第一条纹图进行线性插值运算,得到遮罩图。

在具体实现时,将预设条纹图和第一条纹图输入至线性插值节点Lerp节点,输出遮罩图。其中,Lerp节点输入Alpha0输出A,输入Alpha1输出B,输入Alpha中间值0-1输出AB混合结果,其中A和B分别表示输入至Lerp节点中的预设条纹图和第一条纹图。

步骤S508,通过遮罩图对待渲染模型进行遮罩处理,得到遮罩模型。

将遮罩图遮罩在待渲染模型上,可得到遮罩模型。

步骤S510,基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。

步骤S512,将目标模型的顶点法线方向与预设的光照方向进行点乘运算,得到具有光影效果的目标模型。

为了较少性能消耗,待渲染模型使用自发光光照模型时,需要给待渲染模型增加光影细节,也即是为待渲染模型增加光影效果。在具体实现时,可以使用lambert光照公式为目标模型添加光影效果,该lambert光照公式为:顶点法线方向dot光照方向,其中,dot表示点乘,一般用来计算两个向量的方向差异,获得两个向量的方向差别。

步骤S514,设置上述目标模型的高光效果、菲涅尔外层效果和错位故障效果中的一种或多种。

在具体实现时,为了渲染得到效果更好的目标模型,还可以为目标模型设置高光效果、菲涅尔外层效果和错位故障效果等。其中,目标模型的高光效果的实现方式为:基于预设的微表面分布函数,设置目标模型的高光效果。其中,微表面分布函数也即是GGX公式,也可称为GGX模型,该GGX模型是一种微表面反射光照模型,这种光照模型材质可以更好的表现金属高光边缘的消散(拖尾)效果。

上述目标模型的菲涅尔外层效果可以通过下述步骤50-53实现:

步骤50,将目标模型的顶点法线方向与摄像机方向进行点乘运算,得到点乘结果。

在具体实现时,游戏引擎会自动索引到目标模型的顶点法线方向和摄像机方向。其中,法线方向是指始终垂直于某平面的直线,在几何学中,法线指平面上垂直于曲线在某点的切线的一条线;法线方向为记录法线朝向的向量。

步骤51,对点乘结果取反,得到取反结果。

步骤52,调整取反结果的菲涅尔强度,得到调整结果。

上述菲涅尔强度的大小可以根据研发需求设定,在此不做具体限定。

步骤53,将调整结果与预设颜色相乘,得到具有菲涅尔外层效果的目标模型。

上述预设颜色可以是美术人员自定义的颜色,也可以是游戏疫情默认的颜色。

在实际应用中,上述错位故障效果可以通过下述步骤60-62实现:

步骤60,基于预设的位移参数,将目标模型的RGB三个通道对应的数值分别位移不同的方向。

在图形学原理中颜色是由RGB(红绿蓝)组成,因此将一张正常图的RGB三个通道(分别是R通道、G通道和B通道)分别按顺序RGB合并(也可称为Append合并)可以得到一张跟原图一样的效果。如果将一张图分别错位上下左右,按照RGB三个通道合并,则可以得到一个赛博朋克RGB错位的故障效果(相当于上述故障错位效果)。

在具体实现时,上述位移参数可以根据美术人员的需求设置,该唯一参数用于指示RGB三个通道分别对应的位移偏移方向。

步骤61,将位移后的RGB三个通道的方向分别与位移大小参数相乘,得到RGB三个通道对应的位移结果。

在具体实现时,上述位移大小参数可以根据研发需求设置,也可以设置为默认值,将该位移大小参数也可称为总的RGB位移大小参数。

步骤62,将RGB三个通道对应的位移结果进行合并处理,得到具有错位故障效果的目标模型。

在具体实现时,将RGB三个通道对应的位移结果进行合并,可得到一个错位的颜色效果,该效果为全息常用的错位故障效果。如图6所示为一种错位故障效果的示意图。

上述模型渲染方法,使用两个基础模型,使用遮罩渲染模式,遮罩错位将模型遮罩部分,向左或者向右错位,模拟全息错位效果。两层为节省性能,将使用自发光光照模型,然后使用lambert公式为自发光光照模型材质添加光影细节。同时,本方案既实现了策划和美术同学所想要的模型全息效果功能,对手游而言,性能消耗也不会超过太多,本方案通用于各种场景全息效果的使用,同时双层模型的方案既创新也可以开拓材质制作的多种方式。

对应于上述方法实施例,本发明实施例还提供了一种模型渲染装置,如图7所示,该装置包括:

模型获取模块70,用于获取待渲染模型。

遮罩处理模块71,用于对待渲染模型进行遮罩处理,得到遮罩模型;其中,遮罩模型用于模拟待渲染模型的全息错位效果。

模型嵌套模块72,用于基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。

上述模型渲染装置,首先获取待渲染模型;进而对待渲染模型进行遮罩处理,得到遮罩模型,该遮罩模型用于模拟所述待渲染模型的全息错位效果;然后基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型。该方式中,使用两层模型嵌套来制作出一种假的单个模型全息错位效果,可让待渲染模型拥有全息错位效果,且由于是遮罩模型是立体的,则全息错位效果也是立体的,而非单薄的面片错位,从而提高了模型全息错位效果的质量;同时,该方式相对顶点动画的方式性能消耗较少,可在手游端实现模型全息错位效果。

具体地,上述遮罩处理模块71,用于:获取预设条纹图,将预设条纹图的亮度增加指定数值,得到第一条纹图;将预设条纹图与第一条纹图进行线性插值运算,得到遮罩图;通过遮罩图对待渲染模型进行遮罩处理,得到遮罩模型。

在具体实现时,上述装置还包括预设条纹图确定模块,用于:通过预设时间曲线循环移动屏幕纹理图,生成具有纹理流动效果的目标纹理图;将目标纹理图与预设的黑白条纹图结合,得到具有条纹流动效果的预设条纹图。

进一步地,上述装置还包括偏移参数确定模块,用于:通过预设时间参数对预设循环曲线循环调动处理,得到处理结果;将该处理结果与预设曲线图谱进行映射处理,得到曲线规律参数;将曲线规律参数与预设偏移值相乘,得到偏移参数。

在具体实现时,上述偏移参数确定模块,还用于:通过预设时间参数调用预设循环曲线;其中,该预设时间参数用于控制预设循环曲线的流动速度;对预设循环曲线进行三角运算,得到正弦曲线;将三角曲线的绝对值确定为处理结果。

进一步地,上述偏移参数确定模块,还用于:在将处理结果与预设曲线图谱进行映射处理,得到曲线规律参数之后,将曲线规律参数转换到指定数值范围内,得到最终的曲线规律参数。

进一步地,上述装置还包括预设偏移值确定模块,用于:基于预设的轴向偏移大小参数,将待渲染模型所在坐标轴的轴向变换为与摄像机视角相匹配的目标轴向,并得到目标轴向下的偏移值;对目标轴向下的偏移值取反,得到第一偏移值;对第一偏移值和目标轴向下的偏移值进行线性插值运算,得到预设偏移值。

在具体实现时,上述模型嵌套模块72,用于:将偏移参数链接至待渲染模型的材质面板;通过材质面板,将遮罩模型嵌套在待渲染模型上,并根据偏移参数控制遮罩模型在待渲染模型上的移动位置,得到具有全息错位效果的目标模型。

进一步地,上述装置还包括光影设置模块,用于:在基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型之后,将目标模型的顶点法线方向与预设的光照方向进行点乘运算,得到具有光影效果的目标模型。

进一步地,上述装置还包括高光效果设置模块,用于:在基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型之后,基于预设的微表面分布函数,设置目标模型的高光效果。

进一步地,上述装置还包括菲涅尔效果设置模块,用于:在基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型之后,将目标模型的顶点法线方向与摄像机方向进行点乘运算,得到点乘结果;对点乘结果取反,得到取反结果;调整取反结果的菲涅尔强度,得到调整结果;将调整结果与预设颜色相乘,得到具有菲涅尔外层效果的目标模型。

在具体实现时,上述装置还包括错位故障效果设置模块,用于:在基于预设的偏移参数,将遮罩模型嵌套在待渲染模型上,并控制遮罩模型在待渲染模型上移动,得到具有全息错位效果的目标模型之后,基于预设的位移参数,将目标模型的RGB三个通道对应的数值分别位移不同的方向;将位移后的RGB三个通道的方向分别与位移大小参数相乘,得到RGB三个通道对应的位移结果;将RGB三个通道对应的位移结果进行合并处理,得到具有错位故障效果的目标模型。

本发明实施例所提供的模型渲染装置,其实现原理及产生的技术效果和模型渲染方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

本发明实施例还提供了一种电子设备,如图8所示,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现上述模型渲染方法。

进一步地,图8所示的电子设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。

其中,存储器100可能包含高速随机存取存储器(RAM,RandomAccessMemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现上述模型渲染方法,具体实现可参见方法实施例,在此不再赘述。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 三维模型渲染方法、装置及电子设备
  • 小程序的界面渲染方法、装置、电子设备和存储介质
  • 基于光线信息渲染虚拟对象的方法、装置及电子设备
  • 图像渲染方法、装置及电子设备
  • 在canvas中渲染数据的方法、装置、电子设备及存储介质
  • 一种模型训练方法、图像渲染方法、装置和电子设备
  • 模型生成方法、人脸渲染方法、装置及电子设备
技术分类

06120115846690