模型渲染方法、装置、电子设备及介质
技术领域
本公开涉及渲染技术领域,具体而言,本公开涉及一种模型渲染方法、装置、电子设备及介质。
背景技术
随着计算机图形学的不断发展,物理模型的应用已逐渐深入动漫产业、游戏产业以及影视产业等,其中,物理模型为模拟物理对象的复制品,包括人物模型或者物品模型中的至少一项。通常情况下,需要对物理模型进行渲染,以使得物理模型更符合人们对逼真度的视觉要求,例如,在进行游戏制作时,对游戏中的物体模型进行材质渲染,以使得游戏中的物体更为逼真。
现有技术中,对物理模型进行渲染的方式为:基于目标材质信息人工根据经验得到渲染参数范围,进而手动逐步调整目标模型的渲染参数,以对目标模型进行渲染,使得调整后的目标模型能表现出目标材质的视觉效果。
然而,当通过人工手动逐步调整目标模型的渲染参数进行材质渲染,可能导致对模型进行材质渲染所花费的时间较多,效率较低,再者在进行渲染时通过人为经验得到渲染参数范围,对目标模型进行渲染,可能导致对目标模型进行材质渲染的准确度较低,进而导致对目标模型进行材质渲染的效果较差。
发明内容
本公开提供了一种模型渲染方法、装置、电子设备及介质,可以解决以上至少一种技术问题。
第一方面,提供了一种模型渲染方法,该方法包括:
确定待渲染的目标模型所对应的环境信息和目标材质信息;
基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数;
基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
第二方面,提供了一种模型渲染装置,该装置包括:
第一确定模块,用于确定待渲染的目标模型所对应的环境信息和目标材质信息;
第二确定模块,用于基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数;
渲染模块,用于基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
第三方面,提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行根据第一方面所示的模型渲染方法对应的操作。
第四方面,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所示的模型渲染方法。
本公开提供的技术方案带来的有益效果是:
本公开提供了一种模型渲染方法、装置、电子设备及介质,与现有技术相比,本公开通过确定待渲染的目标模型所对应的环境信息和目标材质信息,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染,实现了基于环境信息和目标材质信息快速准确的确定目标模型中各个第一像素点分别对应的渲染参数,以对目标模型进行材质渲染,从而降低材质渲染所花费的时间并提高材质渲染的准确度,进而提高渲染效率和渲染效果。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本公开实施例提供的实施例一对应的流程示意图;
图2为本公开实施例提供的一种模型渲染装置的结构示意图;
图3为本公开实施例提供的一种电子设备的结构示意图;
图4为本公开实施例提供的实施例二对应的流程示意图;
图5为本公开实施例提供的实施例三对应的流程示意图;
图6为本公开实施例提供的实施例四对应的流程示意图;
图7为本公开实施例提供的实施例四中步骤S604对应的流程示意图;
图8为本公开实施例提供的实施例五对应的流程示意图;
图9为本公开实施例提供的实施例五中步骤S803对应的流程示意图;
图10为本公开实施例提供的参照图像与待渲染的目标模型的示意图;
图11为本公开实施例提供的参照图像与待渲染的目标模型的另一示意图;
图12为本公开实施例提供的参照图像与待渲染的目标模型的又一示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对装置、模块或单元进行区分,并非用于限定这些装置、模块或单元一定为不同的装置、模块或单元,也并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。
本公开实施例提供了一种模型渲染方法(即实施例一),可以由终端设备执行,也可以由服务器执行,如图1所示,该方法包括:
步骤S101,确定待渲染的目标模型所对应的环境信息和目标材质信息。
对于本公开实施例,待渲染的目标模型为在虚拟场景构建的模型,如在虚拟场景构建的待渲染的草、待渲染的山以及待渲染的人物等,其中,待渲染的目标模型可以为二维模型,也可以为三维模型,在本公开实施例中不做限定。
对于本公开实施例,环境信息包括光照信息、温度信息以及湿度信息中的至少一项,且不限于上述所列举的信息,其中,可以利用图像信息和/或文本信息来表征环境信息;目标材质信息包括透光材质以及不透光材质,其中,透光材质包括塑料、玻璃以及冰中的至少一项,不透光材质包括石头、木材以及铁中的至少一项,且透光材质以及不透光材质不限于上述所列举的材质,其中,可以利用图像信息和/或文本信息来表征目标材质信息。
本公开实施例提供了一个具体实例:若待渲染的目标模型为游戏场景中的杯子,且杯子所对应的材质信息为陶瓷,若游戏场景中杯子的当前环境信息为:处于室外、天气为晴天且时间为中午十二点,则可以在与杯子的当前环境信息相同或者相似的现实环境中拍摄照片,将该照片确定为杯子所对应的环境信息,并将文本信息“陶瓷”确定为杯子所对应的目标材质信息。
步骤S102,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
对于本公开实施例,可以基于环境信息以及目标材质信息,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,其中,任一第一像素点对应的渲染参数可以为颜色信息,如任一第一像素点对应的渲染参数可以为蓝色对应的十六进制颜色码和/或三原色(Red-Green-Blue,RGB)颜色值。
步骤S103,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
对于本公开实施例,可以将待渲染的目标模型上任一第一像素点对应的预设参数修改为该任一第一像素点对应的渲染参数(即将任一第一像素点对应的预设参数修改为步骤S102中确定出的该任一第一像素点对应的渲染参数),以实现对待渲染的目标模型中该任一第一像素点进行渲染。按照此方式,可以对待渲染的目标模型中各个第一像素点进行渲染,实现对待渲染的目标模型进行渲染,例如,若待渲染的目标模型上有3个第一像素点,分别为第一像素点1至3,且步骤S102中确定出第一像素点1-3分别对应的渲染参数为(255,255,255)、(251,255,242)以及(250,240,230),则将待渲染的目标模型上第一像素点1-3对应的预设参数依次修改为(255,255,255)、(251,255,242)以及(250,240,230),以完成对待渲染的目标模型的渲染。
本公开实施例提供了一种模型渲染方法,与现有技术相比,本公开实施例通过确定待渲染的目标模型所对应的环境信息和目标材质信息,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染,实现了基于环境信息和目标材质信息快速准确的确定目标模型中各个第一像素点分别对应的渲染参数,以对目标模型进行材质渲染,从而降低材质渲染所花费的时间并提高材质渲染的准确度,进而提高渲染效率和渲染效果。
本公开实施例的另一种可能实现方式(即实施例二),如图4所示,提供了一种模型渲染方法,其中,步骤S402以及步骤S403为实施例一中步骤S102的细化步骤,即步骤S102具体可以包括:步骤S402以及步骤S403。具体地,该方法可以包括:
步骤S401,确定待渲染的目标模型所对应的环境信息和目标材质信息。
对于本公开实施例,步骤S401的相关说明详见实施例一中步骤S101的相关说明,在此不再赘述。
步骤S402,基于环境信息以及目标材质信息确定至少一张参照图像。
其中,每张参照图像中包含预设参照对象,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配。
对于本公开实施例,若目标材质信息为不透光材质,即纯反射光材质,则可以基于环境信息以及目标材质信息确定一张参照图像;若目标材质信息为透光材质,即能够透射光、反射光且折射光的材质,则可以基于环境信息以及目标材质信息确定至少一张参照图像。在本公开实施例中,参照图像中包含的预设参照对象可以球体、柱体或者锥体等,在此不做限定。其中,为消除预设参照对象在环境信息中,预设参照对象本身对预设参照对象的渲染参数的影响,如点光源斜向照射柱体,该柱体背光的部分会处于阴影中,预设参照对象优选为球体。
对于本公开实施例,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配,即预设参照对象的渲染参数为目标材质信息的预设对象在环境信息下的渲染参数,例如,若预设对象为球形体,目标材质为钢,环境信息为太阳光,渲染参数为颜色信息,则预设参照对象的渲染参数为钢球在太阳光下的颜色信息。
步骤S403,基于至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
对于本公开实施例,针对确定出的至少一张参照图像,基于各张参照图像中分别包含的预设参照对象,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
步骤S404,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
对于本公开实施例,步骤S404的相关说明详见实施例一中步骤S103的相关说明,在此不再赘述。
上述介绍了本公开实施例步骤S102的相关内容,为使本公开的技术方案更加清楚明了,下面将进一步分别详细介绍步骤S102中的各个步骤,即下面将进一步详细介绍步骤S402以及步骤S403,其中,步骤S402可以通过神经网络来执行,也可以不通过神经网络来执行,在本公开实施例中不做限定,下述实施例中主要介绍通过神经网络来执行步骤S402的情况。
本公开实施例的另一种可能实现方式(即实施例三),如图5所示,提供了一种模型渲染方法,其中,步骤S502为实施例二中步骤S402的细化步骤,即步骤S402具体可以包括步骤S502。具体地,该方法可以包括:
步骤S501,确定待渲染的目标模型所对应的环境信息和目标材质信息。
对于本公开实施例,步骤S501的相关说明详见实施例一中步骤S101的相关说明,在此不再赘述。
步骤S502,基于环境信息以及目标材质信息,通过预设神经网络模型进行图像恢复处理,得到至少一张参照图像。
其中,每张参照图像中包含预设参照对象,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配。
对于本公开实施例,可以利用多个训练样本对初始网络模型进行训练,得到预设神经网络模型。其中,任一训练样本包括预设环境信息、预设材质信息以及预设图像信息,预设图像信息中包含渲染参数与预设环境信息以及预设材质信息相匹配的参照对象。进一步地,将环境信息以及目标材质信息输入至预设神经网络模型进行图像恢复处理,得到至少一张参照图像,提高图像恢复处理的速度、降低复杂度并增加准确度。
对于本公开实施例,除可以利用预设神经网络模型执行步骤S402之外,还可以利用神经网络模型执行步骤S101~步骤S103中的至少一项,从而降低模型渲染的复杂度。
步骤S503,基于至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
步骤S504,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
对于本公开实施例,步骤S503的相关说明详见实施例二中步骤S403的相关说明,步骤S504的相关说明详见实施例一中步骤S103的相关说明,在此不再赘述。
本公开实施例的另一种可能实现方式(即实施例四),如图6所示,提供了一种模型渲染方法,其中,步骤S603以及步骤S604为实施例二中步骤S403的细化步骤,即步骤S403具体可以包括步骤S603以及步骤S604。具体地,该方法可以包括:
步骤S601,确定待渲染的目标模型所对应的环境信息和目标材质信息。
对于本公开实施例,步骤S601的相关说明详见实施例一中步骤S101的相关说明,在此不再赘述。
步骤S602,基于环境信息以及目标材质信息确定至少一张参照图像,每张参照图像中包含预设参照对象。
其中,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配。
对于本公开实施例,步骤S602的相关说明详见实施例二中步骤S402的相关说明,在此不再赘述。
步骤S603,确定待渲染的目标模型中各个第一像素点的位置信息。
对于本公开实施例,待渲染的目标模型中包括各个第一像素点的坐标信息,基于各个第一像素点的坐标信息可以确定各个第一像素点的位置信息,其中,位置信息可以为坐标信息、法线信息以及切面信息中的至少一项,在此不做限定。
步骤S604,基于各个第一像素点的位置信息以及至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
其中,请参照图7,当任一第一像素点的位置信息为该任一第一像素点的第一法线信息时,针对每个第一像素点,基于每个第一像素点的位置信息以及至少一张参照图像,确定待渲染的目标模型中每个第一像素点对应的渲染参数(即步骤S604),具体可以包括:
步骤S701,基于每个第一像素点的第一法线信息,在每张参照图像中确定与每个第一像素点的第一法线信息对应的第二法线信息。
步骤S702,基于确定出的第二法线信息,在对应的参照图像中确定与第二法线信息相对应的第二像素点。
步骤S703,获取与第二法线信息相对应的第二像素点的渲染参数,并基于获取到的渲染参数,确定待渲染的目标模型中每个第一像素点对应的渲染参数。
其中,本公开实施例中描述了任一第一像素点的位置信息的确定方式,可以按照该方式确定每个第一像素点的位置信息,从而按照本公开实施例的方式确定每个第一像素点对应的渲染参数,即确定各个第一像素点分别对应的渲染参数。
对于本公开实施例,可以基于各个第一像素点的坐标信息,计算得到各个第一像素点的法线信息,具体计算方式在此不做限定。
对于本公开实施例,针对每个第一像素点,基于每个第一像素点的第一法线信息,在每张参照图像中分别确定与每个第一像素点的第一法线信息对应的第二法线信息。在本公开实施例中,任一参照图像中包含预设参照对象中任一第二像素点的坐标信息,基于任一第二像素点的坐标信息可以确定任一第二像素点对应的法线信息。例如,针对不透光材质,其对应一张参照图像,若参照图像中包含球体的预设参照对象,则基于球心坐标以及半径信息,可以确定球体中各个第二像素点的坐标信息,从而确定各个第二像素点对应的法线信息。进一步地,基于每个第一像素点的第一法线信息,在参照图像中确定与第一法线信息对应的第二法线信息,即基于每个第一像素点的第一法线信息,在各个第二像素点对应的法线信息中查找与第一法线信息相平行的第二法线信息,从而在参照图像中确定与第一法线信息对应的第二法线信息。
进一步地,基于在每张参照图像中分别确定出的与第一法线信息对应的第二法线信息,在对应的参照图像中确定与第二法线信息相对应的第二像素点,获取与第二法线信息相对应的第二像素点的渲染参数,并基于获取到的渲染参数,确定待渲染的目标模型中每个第一像素点对应的渲染参数。例如,针对不透光材质,其对应一张参照图像,若在参照图像中确定出与每个第一像素点的第一法线信息对应的第二法线信息,则在该参照图像中确定与第二法线信息对应的第二像素点,提取第二像素点对应的渲染参数,并将提取到的渲染参数确定为待渲染的目标模型中每个第一像素点对应的渲染参数。
步骤S605,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
对于本公开实施例,步骤S605的相关说明详见实施例一中步骤S103的相关说明,在此不再赘述。
本公开实施例的另一种可能实现方式(即实施例五),提供了一种模型渲染方法,该方法包括实施例二所示的步骤S401-S404,其中,如图8所示,若目标材质信息为预设材质信息,则针对任一第一像素点,基于至少一张参照图像,确定待渲染的目标模型中任一第一像素点分别对应的渲染参数(即步骤S403),具体可以包括:
步骤S803,确定任一第一像素点对应的预设参数信息。
步骤S804,基于任一第一像素点对应的预设参数信息,从至少一张参照图像中确定满足预设条件的参照图像。
其中,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配。
步骤S805,基于满足预设条件的参照图像确定任一第一像素点对应的渲染参数。
其中,上述描述了针对任一第一像素点,按照本公开实施例的方式确定任一第一像素点对应的渲染参数的方式,在本公开实施例中,各个第一像素点均可以按照确定任一第一像素点对应的渲染参数的方式,确定各个第一像素点分别对应的渲染参数。
其中,满足预设条件的参照图像中包含的预设参照对象的尺寸与预设参数信息相匹配。
对于本公开实施例,预设材质信息可以为透光材质以及不透光材质中的至少一项,在此不做限定。
对于本公开实施例,针对待渲染的目标模型中任一第一像素点,可以基于待渲染的目标模型中的各个第一像素点的坐标信息,确定任一第一像素点对应的预设参数信息,其中,预设参数信息可以为曲率信息以及厚度信息中的至少一项。进一步地,基于任一第一像素点对应的预设参数信息,从至少一张参照图像中确定满足预设条件的参照图像,其中,可以基于预设参照对象中任一第二像素点的坐标信息确定任一第二像素点的曲率信息和/或厚度信息,从而确定该预设参照对象的尺寸,进而可以确定满足预设条件的参照图像,即确定预设参照对象的尺寸与预设参数信息相匹配的参照图像。其中,预设参照对象的尺寸可以通过直径、边长、面积、体积中的至少一项来表征。
本公开实施例提供了一个具体实例,如图10所示,其中,上方的四个虚线框表示四张参照图像,分别为参照图像1-4,任一参照图像内包括一个预设参照对象,任一预设参照对象为球体参照对象,且材质信息为玻璃材质,四个球体参照对象的直径分别为2厘米(centimetre,cm)、4厘米、5厘米以及7厘米;下方的虚线框内包括待渲染的目标模型,待渲染的目标模型为椭球体模型,且椭球体模型上第一像素点A对应的厚度信息为6厘米。针对第一像素点A,可以基于第一像素点A对应的厚度信息6厘米,从四张参照图像中确定预设参照对象的直径分别为5厘米和7厘米的参照图像,即两张满足预设条件的参照图像分别为参照图像3和参照图像4,其中,预设参照对象的直径5厘米与第一像素点A对应的厚度信息6厘米匹配,预设参照对象的直径7厘米与第一像素点A对应的厚度信息6厘米匹配。
进一步地,若预设参数信息为曲率信息和厚度信息,则可以确定任一第一像素点的曲率信息对应的权重系数,以及任一第一像素点的厚度信息对应的权重系数,并基于任一第一像素点对应的曲率信息及其权重系数、以及任一第一像素点对应的厚度信息及其权重系数,从至少一张参照图像中确定满足预设条件的参照图像。
其中,请参阅图9,若满足预设条件的参照图像包括至少两张,则基于满足预设条件的参照图像确定任一第一像素点对应的渲染参数(即步骤S803),具体可以包括:
步骤S901,确定任一第一像素点的位置信息。
步骤S902,根据任一第一像素点的位置信息从各张满足预设条件的参照图像中分别确定与任一第一像素点的位置信息相匹配的第三像素点。
步骤S903,获取各个第三像素点分别对应的渲染参数,并根据各个第三像素点分别对应的渲染参数以及各个第三像素点分别对应的权重信息,确定任一第一像素点对应的渲染参数。
例如,如图11所示,其中,上方的两个虚线框表示两张参照图像,分别为参照图像3以及参照图像4,任一参照图像内包括一个预设参照对象,任一预设参照对象为球体参照对象,且材质信息为玻璃材质,两个球体参照对象的直径分别为5厘米以及7厘米;下方的虚线框内包括待渲染的目标模型,待渲染的目标模型为椭球体模型,且椭球体模型上存在第一像素点A。针对第一像素点A,根据第一像素点A的位置信息,分别从预设参照对象的直径为5厘米的参照图像中确定与第一像素点A的位置信息相匹配的第三像素点A1,即从参照图像3中确定与第一像素点A的位置信息相匹配的第三像素点A1,以及从预设参照对象的直径为7厘米的参照图像中确定与第一像素点A的位置信息相匹配的第三像素点A2,即从参照图像4中确定与第一像素点A的位置信息相匹配的第三像素点A2,获取第三像素点A1对应的渲染参数(255,255,250)以及第三像素点A2对应的渲染参数(251,255,240),并确定第三像素点A1对应的权重信息0.5以及第三像素点A2对应的权重信息0.5,基于(255,255,250)、(251,255,240)、0.5以及0.5计算得到第一像素点A对应的渲染参数,如(253,255,245)。
对于本公开实施例,位置信息可以为坐标信息、法线信息以及切面信息中的至少一项,在此不做限定。其中,可以针对任一第一像素点,确定任一第一像素点的第一法线信息,在每张满足预设条件的参照图像中分别确定与该第一法线信息对应的第三法线信息,基于各个第三法线信息,在每张满足预设条件的参照图像中分别确定各个第三法线信息对应的第三像素点,在每张满足预设条件的参照图像中分别获取各个第三像素点对应的渲染参数,并确定各个第三像素点分别对应的权重信息,基于各个第三像素点分别对应的渲染参数以及各个第三像素点分别对应的权重信息,计算得到任一第一像素点对应的渲染参数。
例如,如图12所示,其中,上方的两个虚线框表示两张参照图像,分别为参照图像3以及参照图像4,任一参照图像内包括一个预设参照对象,任一预设参照对象为球体参照对象,且材质信息为玻璃材质,两个球体参照对象的直径分别为5厘米以及7厘米;下方的虚线框内包括待渲染的目标模型,待渲染的目标模型为椭球体模型,且椭球体模型上存在第一像素点A。针对第一像素点A,根据第一像素点A的第一法线信息a,从预设参照对象的直径为5厘米的参照图像中确定与第一法线信息a相平行第三法线信息a1,基于第三法线信息a1在预设参照对象的直径为5厘米的参照图像中确定第三像素点A1,即从参照图像3中确定与a相平行的a1,并基于a1确定参照图像3中的第三像素点A1,以及从预设参照对象的直径为7厘米的参照图像中确定与第一法线信息a相平行的第三法线信息a2,基于第三法线信息a2,在预设参照对象的直径为7厘米的参照图像中确定第三像素点A2,即从参照图像4中确定与a相平行的a2,并基于a2确定参照图像4中的第三像素点A2,获取第三像素点A1对应的渲染参数(255,255,250)以及第三像素点A2对应的渲染参数(251,255,240),并确定第三像素点A1对应的权重信息0.5以及第三像素点A2对应的权重信息0.5,按照公式0.5×(255,255,250)+0.5×(251,255,240)计算得到第一像素点A对应的渲染参数,即(253,255,245)。
上述从方法步骤的角度具体阐述了模型渲染方法,下面从虚拟模块或者虚拟单元的角度介绍模型渲染装置,具体如下所示:
本公开实施例提供了一种模型渲染装置,如图2所示,该模型渲染装置20可以包括第一确定模块201、第二确定模块202以及渲染模块203,其中,
第一确定模块201,用于确定待渲染的目标模型所对应的环境信息和目标材质信息。
第二确定模块202,用于基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
渲染模块203,用于基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
本公开实施例的另一种可能实现方式,第二确定模块202可以包括第一确定单元以及第二确定单元,其中,
第一确定单元,用于基于环境信息以及目标材质信息确定至少一张参照图像,每张参照图像中包含预设参照对象,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配。
第二确定单元,用于基于至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
本公开实施例的另一种可能实现方式,第二确定单元,具体可以用于确定待渲染的目标模型中各个第一像素点的位置信息。
第二确定单元,具体还用于基于各个第一像素点的位置信息以及至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
本公开实施例的另一种可能实现方式,位置信息包括第一法线信息。
第二确定单元,具体还用于基于每个第一像素点的第一法线信息,在每张参照图像中确定与每个第一像素点的第一法线信息对应的第二法线信息。
第二确定单元,具体还用于基于确定出的第二法线信息,在对应的参照图像中确定与第二法线信息相对应的第二像素点。
第二确定单元,具体还用于获取与第二法线信息相对应的第二像素点的渲染参数,并基于获取到的渲染参数,确定待渲染的目标模型中每个第一像素点对应的渲染参数。
本公开实施例的另一种可能实现方式,当目标材质信息为预设材质信息。
第二确定单元,具体还用于确定任一第一像素点对应的预设参数信息。
第二确定单元,具体还用于基于任一第一像素点对应的预设参数信息,从至少一张参照图像中确定满足预设条件的参照图像,满足预设条件的参照图像中包含的预设参照对象的尺寸与预设参数信息相匹配。
第二确定单元,具体还用于基于满足预设条件的参照图像确定任一第一像素点对应的渲染参数。
本公开实施例的另一种可能实现方式,当满足预设条件的参照图像包括至少两张。
第二确定单元,具体还用于确定任一第一像素点的位置信息。
第二确定单元,具体还用于根据任一第一像素点的位置信息从各张满足预设条件的参照图像中分别确定与任一第一像素点的位置信息相匹配的第三像素点。
第二确定单元,具体还用于获取各个第三像素点分别对应的渲染参数,并根据各个第三像素点分别对应的渲染参数以及各个第三像素点分别对应的权重信息,确定任一第一像素点对应的渲染参数。
本公开实施例的另一种可能实现方式,第一确定单元,具体用于基于环境信息以及目标材质信息,通过预设神经网络模型进行图像恢复处理,得到至少一张参照图像。
对于本公开实施例,第一确定模块201以及第二确定模块202可以为同一个确定模块,也可以为两个不同的确定模块,第一确定单元以及第二确定单元可以为同一个确定单元,也可以为两个不同的确定单元,在本公开实施例中不做限定。
本公开实施例的模型渲染装置适用于上述方法实施例,其实现原理相类似,此处不再赘述。
本公开实施例提供了一种模型渲染装置,与现有技术相比,本公开实施例通过确定待渲染的目标模型所对应的环境信息和目标材质信息,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染,实现了基于环境信息和目标材质信息快速准确的确定目标模型中各个第一像素点分别对应的渲染参数,以对目标模型进行材质渲染,从而降低材质渲染所花费的时间并提高材质渲染的准确度,进而提高渲染效率和渲染效果。
上述从虚拟模块或者虚拟单元的角度介绍本公开的模型渲染装置,下面从实体装置的角度介绍本公开的电子设备。
下面参考图3,其示出了适于用来实现本公开实施例的电子设备(例如图1中的终端设备或服务器)300的结构示意图。其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行根据方法实施例所示的模型渲染方法。
本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
电子设备包括:存储器以及处理器,其中,这里的处理器可以称为下文所述的处理装置301,存储器可以包括下文中的只读存储器(ROM)302、随机访问存储器(RAM)303以及存储装置308中的至少一项,具体如下所示:
如图3所示,电子设备300可以包括处理装置(例如中央处理器、图形处理器等)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储装置308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有电子设备300操作所需的各种程序和数据。处理装置301、ROM 302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
通常,以下装置可以连接至I/O接口305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置306;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置307;包括例如磁带、硬盘等的存储装置308;以及通信装置309。通信装置309可以允许电子设备300与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置309从网络上被下载和安装,或者从存储装置308被安装,或者从ROM 302被安装。在该计算机程序被处理装置301执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:确定待渲染的目标模型所对应的环境信息和目标材质信息;基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数;基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块或单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一确定模块还可以被描述为“确定待渲染的目标模型所对应的环境信息和目标材质信息的模块”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
本公开实施例提供了一种电子设备,本公开实施例中的电子设备包括:存储器和处理器;至少一个程序,存储于所述存储器中,用于被所述处理器执行时,与现有技术相比可实现:通过确定待渲染的目标模型所对应的环境信息和目标材质信息,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染,实现了基于环境信息和目标材质信息快速准确的确定目标模型中各个第一像素点分别对应的渲染参数,以对目标模型进行材质渲染,从而降低材质渲染所花费的时间并提高材质渲染的准确度,进而提高渲染效率和渲染效果。
上述从实体装置的角度介绍本公开的电子设备,下面从介质的角度介绍本公开的计算机可读介质。
本公开实施例提供了一种计算机可读介质,该计算机可读介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,通过确定待渲染的目标模型所对应的环境信息和目标材质信息,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染,实现了基于环境信息和目标材质信息快速准确的确定目标模型中各个第一像素点分别对应的渲染参数,以对目标模型进行材质渲染,从而降低材质渲染所花费的时间并提高材质渲染的准确度,进而提高渲染效率和渲染效果。
根据本公开的一个或多个实施例,提供了一种模型渲染方法,包括:
确定待渲染的目标模型所对应的环境信息和目标材质信息;
基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数;
基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
根据本公开的一个或多个实施例,基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,包括:
基于环境信息以及目标材质信息确定至少一张参照图像,每张参照图像中包含预设参照对象,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配;
基于至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
根据本公开的一个或多个实施例,基于所述至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数,包括:
确定待渲染的目标模型中各个第一像素点的位置信息;
基于各个第一像素点的位置信息以及至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
根据本公开的一个或多个实施例,位置信息包括第一法线信息;
其中,针对每个第一像素点,基于每个第一像素点的位置信息以及至少一张参照图像,确定待渲染的目标模型中每个第一像素点对应的渲染参数,包括:
基于每个第一像素点的第一法线信息,在每张参照图像中确定与每个第一像素点的第一法线信息对应的第二法线信息;
基于确定出的第二法线信息,在对应的参照图像中确定与第二法线信息相对应的第二像素点;
获取与第二法线信息相对应的第二像素点的渲染参数,并基于获取到的渲染参数,确定待渲染的目标模型中每个第一像素点对应的渲染参数。
根据本公开的一个或多个实施例,若目标材质信息为预设材质信息;
其中,针对任一第一像素点,基于至少一张参照图像,确定待渲染的目标模型中任一第一像素点分别对应的渲染参数,包括:
确定任一第一像素点对应的预设参数信息;
基于任一第一像素点对应的预设参数信息,从至少一张参照图像中确定满足预设条件的参照图像,满足预设条件的参照图像中包含的预设参照对象的尺寸与预设参数信息相匹配;
基于满足预设条件的参照图像确定任一第一像素点对应的渲染参数。
根据本公开的一个或多个实施例,若满足预设条件的参照图像包括至少两张;
基于满足预设条件的参照图像确定任一第一像素点对应的渲染参数,包括:
确定任一第一像素点的位置信息;
根据任一第一像素点的位置信息从各张满足预设条件的参照图像中分别确定与任一第一像素点的位置信息相匹配的第三像素点;
获取各个第三像素点分别对应的渲染参数,并根据各个第三像素点分别对应的渲染参数以及各个第三像素点分别对应的权重信息,确定任一第一像素点对应的渲染参数。
根据本公开的一个或多个实施例,基于环境信息以及目标材质信息确定至少一张参照图像,包括:
基于环境信息以及目标材质信息,通过预设神经网络模型进行图像恢复处理,得到至少一张参照图像。
根据本公开的一个或多个实施例,提供了一种模型渲染装置,包括:
第一确定模块,用于确定待渲染的目标模型所对应的环境信息和目标材质信息;
第二确定模块,用于基于环境信息以及目标材质信息确定待渲染的目标模型中各个第一像素点分别对应的渲染参数;
渲染模块,用于基于各个第一像素点分别对应的渲染参数对待渲染的目标模型进行渲染。
根据本公开的一个或多个实施例,第二确定模块包括第一确定单元以及第二确定单元,其中,
第一确定单元,用于基于环境信息以及目标材质信息确定至少一张参照图像,每张参照图像中包含预设参照对象,预设参照对象的渲染参数与环境信息以及目标材质信息相匹配;
第二确定单元,用于基于至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
根据本公开的一个或多个实施例,第二确定单元,具体用于确定待渲染的目标模型中各个第一像素点的位置信息;
第二确定单元,具体还用于基于各个第一像素点的位置信息以及至少一张参照图像,确定待渲染的目标模型中各个第一像素点分别对应的渲染参数。
根据本公开的一个或多个实施例,位置信息包括第一法线信息;
第二确定单元,具体还用于基于每个第一像素点的第一法线信息,在每张参照图像中确定与每个第一像素点的第一法线信息对应的第二法线信息;
第二确定单元,具体还用于基于确定出的第二法线信息,在对应的参照图像中确定与第二法线信息相对应的第二像素点;
第二确定单元,具体还用于获取与第二法线信息相对应的第二像素点的渲染参数,并基于获取到的渲染参数,确定待渲染的目标模型中每个第一像素点对应的渲染参数。
根据本公开的一个或多个实施例,当目标材质信息为预设材质信息;
第二确定单元,具体还用于确定任一第一像素点对应的预设参数信息;
第二确定单元,具体还用于基于任一第一像素点对应的预设参数信息,从至少一张参照图像中确定满足预设条件的参照图像,满足预设条件的参照图像中包含的预设参照对象的尺寸与预设参数信息相匹配;
第二确定单元,具体还用于基于满足预设条件的参照图像确定任一第一像素点对应的渲染参数。
根据本公开的一个或多个实施例,当满足预设条件的参照图像包括至少两张;
第二确定单元,具体还用于确定任一第一像素点的位置信息;
第二确定单元,具体还用于根据任一第一像素点的位置信息从各张满足预设条件的参照图像中分别确定与任一第一像素点的位置信息相匹配的第三像素点;
第二确定单元,具体还用于获取各个第三像素点分别对应的渲染参数,并根据各个第三像素点分别对应的渲染参数以及各个第三像素点分别对应的权重信息,确定任一第一像素点对应的渲染参数。
根据本公开的一个或多个实施例,第一确定单元,具体用于基于环境信息以及目标材质信息,通过预设神经网络模型进行图像恢复处理,得到至少一张参照图像。
根据本公开的一个或多个实施例,提供了一种电子设备,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行根据方法实施例所示的模型渲染方法。
根据本公开的一个或多个实施例,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现方法实施例所示的模型渲染方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。