渲染图像的生成方法、装置、计算机设备及存储介质与流程

    专利查询2022-07-12  125



    1.本公开涉及图像处理技术领域,具体而言,涉及一种渲染图像的生成方法、装置、计算机设备及存储介质。


    背景技术:

    2.在对卡通形象等二次元对象进行渲染时,可以为二次元对象添加风格效果,比如添加外描边勾线。在一些可能的情况下,会采用后处理的方式为渲染后的二次元对象进行外描边勾线的添加,比如采用管线处理的方式,而管线处理一般比较复杂,若利用二次元对象生成连续变化的画面,则需要逐帧对每帧画面图像进行处理,效率较低。


    技术实现要素:

    3.本公开实施例至少提供一种渲染图像的生成方法、装置、计算机设备及存储介质。
    4.第一方面,本公开实施例提供了一种渲染图像的生成方法,包括:获取利用颜色贴图对目标对象的三维模型进行渲染后生成的第一渲染模型;以及对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,得到第二渲染模型;将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像。
    5.这样,通过对目标对象的三维模型中的顶点进行对应法线方向的位置偏移处理、以及预设颜色的渲染处理得到的第二渲染模型,相较于直接对三维模型进行渲染后生成的第一渲染模型而言具有突出的“边缘”,因此将第一渲染模型和第二渲染模型进行显示叠加处理,可以在正常显示出第一渲染模型的渲染图像的基础上,显示出第二渲染模型对应的渲染图像未被第一渲染模型的渲染图像遮挡而显露出的“边缘”。这种“边缘”在得到目标渲染图像中即可以展示出二次元对象的外描边勾线的效果。这样,在模型的层面上进行处理,可以随着二次元对象的状态改变而相应的渲染显示出对应的外描边勾线,不需要逐帧进行后处理,因此效率也较高。
    6.一种可选的实施方式中,对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,包括:基于对所述三维模型的当前显示视角,从所述三维模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到中间三维模型;利用所述预设颜色对所述中间三维模型进行渲染处理,生成第二渲染模型。
    7.一种可选的实施方式中,对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,包括:利用预设颜色对所述三维模型进行渲染处理,得到中间渲染模型;基于所述中间渲染模型的当前显示视角,从所述中间渲染模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到所述第二渲染模型。
    8.这样,具体提供了两种确定第二渲染模型的方式,用以生成目标渲染图像,由于可选的方式更多,因此灵活性也更高。
    9.一种可选的实施方式中,所述对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理,包括:获取所述位置偏移处理的偏移量;所述偏移量用于表征所述目标顶点在偏移后的位置、与在偏移前的位置之间的距离;利用所述偏移量,对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理。
    10.这样,由于偏移量是可以进行设置的,因此能够更加灵活地确定目标渲染图像中显示出外描边勾线与目标对象的轮廓线之间的距离,从而使目标渲染图像中的目标对象可以进一步地依靠外描边勾线显示出精致风格类型,或者比较夸张的漫画风格类型。
    11.一种可选的实施方式中,对所述三维模型中的顶点进行预设颜色的渲染处理,包括:获取利用所述预设颜色对所述顶点进行渲染处理时的渲染范围;基于所述渲染范围,对所述三维模型中的所述顶点进行预设颜色的渲染处理。
    12.这样,一方面由于预设颜色是可以进行选择的,因此,可以对外描边勾线进行颜色上的灵活更改。另一方面,在对顶点进行渲染处理时,渲染范围可以表征外描边勾线的粗细程度,因此通过对渲染范围的调整,也可以相应地对外描边勾线进行调整,从而使得到的目标渲染图像中的目标对象可以显示出不同的风格类型。
    13.一种可选的实施方式中,所述基于对所述三维模型的当前显示视角,从所述三维模型包括的多个顶点中,确定目标顶点,包括:基于所述当前显示视角,基于所述三维模型中多个顶点分别在对应模型坐标系下的位置信息,从所述三维模型的多个顶点中,筛选在所述显示视角下不可见的顶点,作为所述目标顶点。
    14.一种可选的实施方式中,所述方法还包括:确定在所述三维模型对应的模型坐标系下,拍摄所述三维模型的虚拟相机的拍摄位姿;基于所述虚拟相机的拍摄位姿,确定对所述三维模型的当前显示视角。
    15.这样,将三维模型以及虚拟相机归属在同一坐标系下,以确定当前显示视角的方式,准确性较高,在实际应用中操作也比较简单,因此还可以有效的提高效率。
    16.一种可选的实施方式中,所述将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像,包括:基于所述三维模型的当前显示视角,对所述第一渲染模型进行渲染,得到第一渲染图层,以及,对所述第二渲染模型进行渲染,得到第二渲染图层;将所述第一渲染图层叠加至所述第二渲染图层的前端,生成所述目标渲染图像。
    17.第二方面,本公开实施例还提供一种渲染图像的生成装置,包括:获取模块,用于获取利用颜色贴图对目标对象的三维模型进行渲染后生成的第一渲染模型;以及第一处理模块,用于对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,得到第二渲染模型;第二处理模块,用于将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像。
    18.一种可选的实施方式中,所述第一处理模块在对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理时,用于:基于对所述三维模型的当前显示视角,从所述三维模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到中间三维模型;利用所述预设颜色对所述中间三维模型进行渲染处理,生成第二渲染模型。
    19.一种可选的实施方式中,所述第一处理模块在对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理时,用于:利用预设颜色对所述三
    维模型进行渲染处理,得到中间渲染模型;基于所述中间渲染模型的当前显示视角,从所述中间渲染模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到所述第二渲染模型。
    20.一种可选的实施方式中,所述第一处理模块在对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理时,用于:获取所述位置偏移处理的偏移量;所述偏移量用于表征所述目标顶点在偏移后的位置、与在偏移前的位置之间的距离;利用所述偏移量,对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理。
    21.一种可选的实施方式中,所述第一处理模块在对所述三维模型中的顶点进行预设颜色的渲染处理时,用于:获取利用所述预设颜色对所述顶点进行渲染处理时的渲染范围;基于所述渲染范围,对所述三维模型中的所述顶点进行预设颜色的渲染处理。
    22.一种可选的实施方式中,所述第一处理模块在基于对所述三维模型的当前显示视角,从所述三维模型包括的多个顶点中,确定目标顶点时,用于:基于所述当前显示视角,基于所述三维模型中多个顶点分别在对应模型坐标系下的位置信息,从所述三维模型的多个顶点中,筛选在所述显示视角下不可见的顶点,作为所述目标顶点。
    23.一种可选的实施方式中,所述第一处理模块还用于:确定在所述三维模型对应的模型坐标系下,拍摄所述三维模型的虚拟相机的拍摄位姿;基于所述虚拟相机的拍摄位姿,确定对所述三维模型的当前显示视角。
    24.一种可选的实施方式中,所述第二处理模块在将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像时,用于:基于所述三维模型的当前显示视角,对所述第一渲染模型进行渲染,得到第一渲染图层,以及,对所述第二渲染模型进行渲染,得到第二渲染图层;将所述第一渲染图层叠加至所述第二渲染图层的前端,生成所述目标渲染图像。
    25.第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
    26.第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
    27.关于上述渲染图像的生成装置、计算机设备、及计算机可读存储介质的效果描述参见上述渲染图像的生成方法的说明,这里不再赘述。
    28.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
    附图说明
    29.为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人
    员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
    30.图1示出了本公开实施例所提供的一种渲染图像的生成方法的流程图;
    31.图2示出了本公开实施例所提供的一种目标对象的三维模型的示意图;
    32.图3示出了本公开实施例所提供的一种颜色贴图的示意图;
    33.图4示出了本公开实施例所提供的一种在二维图像上添加外描边勾线的示意图;
    34.图5示出了本公开实施例所提供的一种操作界面的示意图;
    35.图6示出了本公开实施例所提供的一种一种目标渲染图像的示意图;
    36.图7示出了本公开实施例所提供的一种渲染图像的生成装置的示意图;
    37.图8示出了本公开实施例所提供的一种计算机设备的示意图。
    具体实施方式
    38.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
    39.经研究发现,在利用管线处理的方式为二次元对象添加外描边勾线时,通常会采用后处理的方式,比如在得到显示二次元对象的一帧图像后,以像素点为处理单位,通过管线处理的方式为这帧图像添加显示出二次元对象的外描边勾线。而管线处理的方式通常比较复杂,对于为二次元对象生成的连续变化的画面,采用逐帧处理的方式就会导致效率较低。
    40.基于上述研究,本公开提供了一种渲染图像的生成方法,通过对目标对象的三维模型中的顶点进行对应法线方向的位置偏移处理、以及预设颜色的渲染处理得到的第二渲染模型,相较于直接对三维模型进行渲染后生成的第一渲染模型而言具有突出的“边缘”,因此将第一渲染模型和第二渲染模型进行显示叠加处理,可以在正常显示出第一渲染模型的渲染图像的基础上,显示出第二渲染模型对应的渲染图像未被第一渲染模型的渲染图像遮挡而显露出的“边缘”。这种“边缘”在得到目标渲染图像中即可以展示出二次元对象的外描边勾线的效果。这样,在模型的层面上进行处理,可以随着二次元对象的状态改变而相应的渲染显示出对应的外描边勾线,不需要逐帧进行后处理,因此效率也较高。
    41.针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
    42.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
    43.为便于对本实施例进行理解,首先对本公开实施例所公开的一种渲染图像的生成方法进行详细介绍,本公开实施例所提供的渲染图像的生成方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终
    端设备可以为用户设备(user equipment,ue)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(personal digital assistant,pda)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该渲染图像的生成方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
    44.下面对本公开实施例提供的渲染图像的生成方法加以说明。本公开实施例提供的一种渲染图像的生成方法,可以用于确定二次元对象的渲染图像。此处说明的二次元对象,具体可以包括卡通形象、游戏角色、虚拟宠物等,因此本公开实施例提供的生成方法可以具体应用于游戏画面制作或生成、动漫影视制作等不同的应用领域中。在利用本公开实施例提供的渲染图像的生成方法得到渲染图像后,可以使得渲染显示出的二次元对象具有外描边勾线的效果,这种风格渲染的效果能够使得渲染显示出的二次元对象具备有特殊的风格效果,比如突显出卡通风格或者简约风格。
    45.参见图1所示,为本公开实施例提供的一种渲染图像的生成方法的流程图,所述方法包括步骤s101~s103,其中:
    46.s101:获取利用颜色贴图对目标对象的三维模型进行渲染后生成的第一渲染模型;
    47.s102:对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,得到第二渲染模型;
    48.s103:将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像。
    49.本公开实施例在确定目标渲染图像时,利用颜色贴图对目标对象的三维模型进行渲染生成第一渲染模型,并通过对三维模型中的顶点进行对应法线方向的位置偏移处理以及预设颜色的渲染处理,得到第二渲染模型,并通过将第一渲染模型和第二渲染模型进行显示叠加处理,以得到目标渲染图像。这样,在模型的层面上进行处理,可以随着二次元对象的状态改变而相应的渲染显示出对应的外描边勾线,不需要逐帧进行后处理,因此效率也较高。
    50.下面对上述s101~s103加以详细说明。
    51.针对上述s101,目标对象例如可以包括上述说明的二次元对象,具体不再进行赘述。由于目标对象为虚拟对象,并不实际存在,因此可以通过构建目标对象对应的三维模型的方式目标对象的身高、胖瘦等体态特征,并利用确定的三维模型模拟目标对象希望在现实世界中呈现出的形象。示例性的,参见图2所示,为本公开实施例提供的一种目标对象的三维模型的示意图,此处示出的三维模型为人工构建的虚拟模型;对于三维模型,具体还可以细化表现出五官特征以及着装特征等具体特征,在图2中并未示出。另外,针对不同的目标对象,可以相应的确定对应的三维模型。
    52.三维模型通常包括:位于三维模型表面的多个顶点、以及通过顶点之间的相互连接关系构成的面片(mesh)。
    53.对于颜色贴图,参见图3所示,为本公开实施例提供的一种颜色贴图的示意图,实际上颜色贴图上的不同区域具有不同的颜色,颜色贴图可以为目标对象对应的三维模型在渲染时添加颜色效果,也即实现对三维模型的着色处理。
    54.因此,利用颜色贴图对目标对象的三维模型进行渲染后,生成的第一渲染模型可
    以反映出五官、衣着等的图案和相应的颜色。在一种可能的情况下,若无需对目标对象进行外描边勾线的添加渲染,得到的第一渲染模型也可以直接用于渲染生成可以完整展示出目标对象的图像。
    55.针对上述s102,示例性的,在图2中示出的三维模型中示出了部分顶点、以及顶点对应的顶点法线方向。由于三维模型可以确定,因此可以在三维模型上的外轮廓上确定多个顶点,并根据多个顶点分别在三维模型上的位置,确定各个顶点分别对应的法线方向。具体确定的法线方向的方式在此不再赘述。
    56.通过对三维模型中的顶点进行位置偏移处理、以及预设颜色的渲染处理,可以得到用于渲染显示出外描边勾线的第二渲染模型。由于位置偏移处理以及预设颜色的渲染处理之间的先后顺序是可以改变的,因此在具体实施中,例如可以采用下述(a)或者(b)两种不同的方式:
    57.(a):首先从三维模型中的多个顶点中确定待位置偏移处理的目标顶点,再对确定的目标顶点进行位置偏移处理以及预设颜色的渲染处理。
    58.在具体实施中,具体可以采用下述方式:基于对所述三维模型的当前显示视角,从所述三维模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到中间三维模型;利用所述预设颜色对所述中间三维模型进行渲染处理,生成第二渲染模型。
    59.其中,在根据对三维模型的当前显示视角从三维模型包括的多个顶点中确定目标顶点时,具体可以采用下述方式:基于所述当前显示视角,基于所述三维模型中多个顶点分别在对应模型坐标系下的位置信息,从所述三维模型的多个顶点中,筛选在所述显示视角下不可见的顶点,作为所述目标顶点。
    60.具体地,在确定当前显示视角时,例如可以确定在三维模型对应的模型坐标系下,拍摄三维模型的虚拟相机的拍摄位姿,然后基于虚拟相机的拍摄位姿,确定对三维模型的当前显示视角。这里,虚拟相机可以理解为虚拟出的用于对目标对象进行拍摄的相机;对虚拟相机的拍摄参数信息进行设置或调整,可以相应的改变拍摄位姿。
    61.此处,由于在确定当前显示视角时,具体涉及到虚拟相机与目标对象之间的相对位置关系,因此为了更准确地确定当前显示视角,可以以三维模型为基准建立对应的模型坐标系,并在该模型坐标系下确定虚拟相机在模型坐标系下的位置信息。另外,通过虚拟相机的拍摄参数信息,比如拍摄仰角为45度,可以确定出虚拟相机的拍摄姿态。这样,根据虚拟相机的位置信息和拍摄姿态,即可以确定虚拟相机的拍摄位姿。
    62.因此,由于拍摄位姿发生了改变,展示出的目标对象对应的当前显示视角发生改变,比如由可以展示出目标对象的正面变化为可以展示出目标对象的侧面。这里说明的正面和侧面,实际上展示出的是对应于目标对象的正面和侧面的至少一个顶点。由于利用当前显示视角可以确定当前可见顶点在模型坐标系下的分布区域,并且三维模型中多个顶点在模型坐标系下的位置信息可以确定,因此可以利用多个顶点对应的位置信息,从三维模型中的多个顶点中筛选出在显示视角下不可见的顶点,并将其作为目标顶点。
    63.在确定目标顶点的情况下,首先可以对目标顶点对应顶点偏移方向进行位置偏移处理,得到中间三维模型。其中,在进行位置偏移处理时,具体可以采用下述方式:获取所述位置偏移处理的偏移量;所述偏移量用于表征所述目标顶点在偏移后的位置、与在偏移前
    的位置之间的距离;利用所述偏移量,对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理。
    64.其中,偏移量具体可以影响得到的第二渲染模型在用于得到目标渲染图像后,显示出的外描边勾线与渲染出的目标对象的最外侧边缘(也即目标对象的轮廓线)之间的距离。一般地,在为目标对象渲染出外描边勾线时,会在贴近目标对象的轮廓线的位置处进行外描边勾线。此处通过二维图像进行简化说明,参见图4所示,为本公开实施例提供的一种在二维图像上添加外描边勾线的示意图。在图4中(a)示出了一个长方形物体,轮廓线41以虚线表示。对于长方形物体的轮廓线41,可以认为是由多个顶点组成的,并且在顶点的法线方向上可以对顶点进行在二维平面上的位置偏移;在将所有顶点进行相同距离的位置偏移后,即可由原先的轮廓线41得到位置偏移后的外描边勾线42,为长方形物体添加的外描边勾线42例如以实线表示。类似的,在图4中(b)示出了相同的长方形物体,为便于区分,标注为轮廓线43,并且为长方形物体添加的外描边勾线44也利用实线表示。这里,顶点在对应法线方向上和外描边勾线之间的距离,例如图4中(a)示出的距离d1以及(b)中示出的距离d2;将二维图像上迁移至三维模型上,同样可以确定这样的距离,也即上述说明的偏移量。
    65.此处,通过对图4的说明可以知道,设置的偏移量在大小不同时,添加出的外描边勾线的效果也不同。比如对于图4中(a)示出的长方形物体,由于偏移量较小,因此添加的外描边勾线距离长方形物体的轮廓线较近,展示出的风格类型更接近于在对刻画细节比较多的人物进行渲染处理时得到的精致风格类型。而对于图4中(b)示出的长方形物体,由于偏移量较大,因此添加的外描边勾线距离长方形物体的轮廓线较远,展示出的风格更接近于在对简笔的卡通人物进行渲染处理时得到的比较夸张的、漫画风格的卡通风格类型。
    66.因此,在获取位置偏移处理的偏移量时,例如可以根据实际的想要达到的渲染风格类型相应的确定对应的偏移量。偏移量的单位例如可以以渲染为二维图像后对应的像素点为单位,比如将偏移量设置为2像素点或者5像素点,以得到不同的风格类型。
    67.另外,利用偏移量对三维模型中的顶点进行对应顶点法线方向的位置偏移处理,这种原理与上述图4中介绍的在二维图像上对轮廓线进行位置偏移处理的原理相同,在此不再重复赘述。
    68.在利用上述说明的位置偏移处理的方式获取到中间渲染模型的情况下,还可以利用预设颜色对中间三维模型进行渲染处理,得到第二渲染模型。
    69.在具体实施中,例如可以采用下述方式:获取利用所述预设颜色对所述顶点进行渲染处理时的渲染范围;基于所述渲染范围,对所述三维模型中的所述顶点进行预设颜色的渲染处理。
    70.其中,预设颜色具体包括显示出的外描边勾线的颜色,具体例如可以响应于对颜色的选取操作确定。参见图5所示,为本公开实施例提供的一种操作界面的示意图。在操作界面中,在“选取颜色”对应位置处包括色卡以及取色按钮,响应于对取色按钮的点击操作,可以选取在进行顶点的渲染处理时的渲染颜色,并且利用色卡显示出当前选取的渲染颜色。
    71.渲染范围具体可以反应在外描边勾线的粗细程度,例如在图4中(a)对应的渲染范围较小,因此显示出的外描边勾线较细;而图4中(b)对应的渲染范围较大,因此显示出的外描边勾线较粗。在确定对顶点进行渲染处理时的渲染范围时,在图5中示出的操作界面中“选取范围”的对应位置处还提供了一种调节旋钮,响应于对该调节旋钮的控制操作,可以确定的选取的渲染范围的大小,并在右侧利用数值显示出当前的控制操作结果。这里,选取的渲染范围例如可以以像素表示,具体表征在对外描边勾线进行渲染显示时,在顶点对应法线方向上占据的像素点数量。
    72.在确定预设颜色和渲染范围的情况下,即可以根据渲染范围,利用预设颜色对顶点进行渲染处理,以得到第二渲染模型。此处,得到的第二渲染模型,其外形与三维模型一致,但相较于三维模型而言较大,若将第二渲染模型与三维模型进行套叠处理,则可以利用第二渲染模型包裹住三维模型。另外,在当前显示视角下第二渲染模型的顶点并不可见。
    73.(b):首先利用预设颜色对三维模型进行渲染处理,再从三维模型中的多个顶点里确定待进行位置偏移处理的目标顶点,以继续进行对应顶点法线方向的位置偏移处理。
    74.在具体实施中,例如可以采用下述方式:利用预设颜色对所述三维模型进行渲染处理,得到中间渲染模型;基于所述中间渲染模型的当前显示视角,从所述中间渲染模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到所述第二渲染模型。
    75.其中,预设颜色的确定方式可以参见上述(a)中的说明,在此不再赘述。在利用预设颜色对三维模型进行渲染处理后,得到的中间渲染模型例如是整体以预设颜色表达出的三维模型。
    76.在得到中间渲染模型后,具体可以通过当前显示视角从多个顶点中确定目标顶点,并确定对目标顶点进行对应顶点法线方向上的位置偏移处理。其中,确定当前显示视角的方式、以及利用确定的当前显示视角确定目标点顶点的方式具体可以参考上述(a)中的说明,在此同样不再重复赘述。在对已渲染预设颜色的目标顶点进行对应法线方向上的位置偏移处理时,具体采用原理与上述(a)中确定第二渲染模型的原理相似,得到第二渲染模型与上述(a)中确定的第二渲染模型也相同。
    77.另外,针对上述s101以及s102,并不对步骤执行的先后顺序做出限定。
    78.针对上述s103,在根据上述s101以及s102分别确定第一渲染模型以及第二渲染模型的情况下,通过将第一渲染模型和第二渲染模型进行显示叠加处理,可以得到目标渲染图像。
    79.在具体实施中,具体例如可以采用下述方式确定目标渲染图像:基于所述三维模型的当前显示视角,对所述第一渲染模型进行渲染,得到第一渲染图层,以及,对所述第二渲染模型进行渲染,得到第二渲染图层;将所述第一渲染图层叠加至所述第二渲染图层的前端,生成所述目标渲染图像。
    80.具体地,第二渲染模型具体以预设颜色进行了顶点渲染,并且相较于第一渲染模型而言较大,因此在将第二渲染模型进行渲染后得到的第二渲染图层,会比对第一渲染模型进行渲染后得到的第一渲染图层稍大,若将第一渲染图层叠加在第二渲染图层的前端,第一渲染图层无法对第二渲染图层进行完整的遮挡,而是会显示出第二渲染图层未被遮挡的边缘部分,也即被渲染显示出的具有预设颜色和渲染范围的部分。另外,在当前显示视角下第二渲染模型可见部分的顶点已被移除,并不会对第一渲染模型的显示造成影响,而第一渲染模型已通过颜色贴图的渲染,可以显示出目标对象的美术细节,因此在将第一渲染图层叠加至第二渲染图层的前端后,得到的目标渲染图像在可以完整地展示出目标对象的
    基础上,还可以展示出由第二渲染模型渲染显示出的外描边勾线,以为目标对象添加更多风格效果。
    81.示例性的,参见图6所示,为本公开实施例提供的一种目标渲染图像的示意图。其中,图6中(a)示出的目标对象例如为第一渲染图层对应的渲染图像,图6中(b)则为叠加第二渲染图层后得到的目标渲染图像。相较于图6中(a)示出的渲染图像,可以看到图6中(b)中示出的目标渲染图像中目标对象具备有外描边勾线,可以更进一步地体现出漫画风格效果。
    82.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
    83.基于同一发明构思,本公开实施例中还提供了与渲染图像的生成方法对应的渲染图像的生成装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述渲染图像的生成方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
    84.参照图7所示,为本公开实施例提供的一种渲染图像的生成装置的示意图,所述装置包括:获取模块71、第一处理模块72、第二处理模块73;其中,
    85.获取模块71,用于获取利用颜色贴图对目标对象的三维模型进行渲染后生成的第一渲染模型;以及
    86.第一处理模块72,用于对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,得到第二渲染模型;
    87.第二处理模块73,用于将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像。
    88.一种可选的实施方式中,所述第一处理模块72在对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理时,用于:基于对所述三维模型的当前显示视角,从所述三维模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到中间三维模型;利用所述预设颜色对所述中间三维模型进行渲染处理,生成第二渲染模型。
    89.一种可选的实施方式中,所述第一处理模块72在对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理时,用于:利用预设颜色对所述三维模型进行渲染处理,得到中间渲染模型;基于所述中间渲染模型的当前显示视角,从所述中间渲染模型包括的多个顶点中,确定目标顶点,并对所述目标顶点进行对应顶点法线方向的位置偏移处理,得到所述第二渲染模型。
    90.一种可选的实施方式中,所述第一处理模块72在对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理时,用于:获取所述位置偏移处理的偏移量;所述偏移量用于表征所述目标顶点在偏移后的位置、与在偏移前的位置之间的距离;利用所述偏移量,对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理。
    91.一种可选的实施方式中,所述第一处理模块72在对所述三维模型中的顶点进行预设颜色的渲染处理时,用于:获取利用所述预设颜色对所述顶点进行渲染处理时的渲染范围;基于所述渲染范围,对所述三维模型中的所述顶点进行预设颜色的渲染处理。
    92.一种可选的实施方式中,所述第一处理模块72在基于对所述三维模型的当前显示
    视角,从所述三维模型包括的多个顶点中,确定目标顶点时,用于:基于所述当前显示视角,基于所述三维模型中多个顶点分别在对应模型坐标系下的位置信息,从所述三维模型的多个顶点中,筛选在所述显示视角下不可见的顶点,作为所述目标顶点。
    93.一种可选的实施方式中,所述第一处理模块72还用于:确定在所述三维模型对应的模型坐标系下,拍摄所述三维模型的虚拟相机的拍摄位姿;基于所述虚拟相机的拍摄位姿,确定对所述三维模型的当前显示视角。
    94.一种可选的实施方式中,所述第二处理模块73在将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像时,用于:基于所述三维模型的当前显示视角,对所述第一渲染模型进行渲染,得到第一渲染图层,以及,对所述第二渲染模型进行渲染,得到第二渲染图层;将所述第一渲染图层叠加至所述第二渲染图层的前端,生成所述目标渲染图像。
    95.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
    96.本公开实施例还提供了一种计算机设备,如图8所示,为本公开实施例提供的计算机设备结构示意图,包括:
    97.处理器10和存储器20;所述存储器20存储有处理器10可执行的机器可读指令,处理器10用于执行存储器20中存储的机器可读指令,所述机器可读指令被处理器10执行时,处理器10执行下述步骤:
    98.获取利用颜色贴图对目标对象的三维模型进行渲染后生成的第一渲染模型;以及对所述三维模型中的顶点进行对应顶点法线方向的位置偏移处理、以及预设颜色的渲染处理,得到第二渲染模型;将所述第一渲染模型和所述第二渲染模型进行显示叠加处理,得到目标渲染图像。
    99.上述存储器20包括内存210和外部存储器220;这里的内存210也称内存储器,用于暂时存放处理器10中的运算数据,以及与硬盘等外部存储器220交换的数据,处理器10通过内存210与外部存储器220进行数据交换。
    100.上述指令的具体执行过程可以参考本公开实施例中所述的渲染图像的生成方法的步骤,此处不再赘述。
    101.本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的渲染图像的生成方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
    102.本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的渲染图像的生成方法的步骤,具体可参见上述方法实施例,在此不再赘述。
    103.其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
    104.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开
    所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
    105.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
    106.另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
    107.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
    108.最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
    转载请注明原文地址:https://tc.8miu.com/read-4574.html

    最新回复(0)