CN116310056A - 三维模型的渲染方法、渲染装置、设备及介质 - Google Patents
三维模型的渲染方法、渲染装置、设备及介质 Download PDFInfo
- Publication number
- CN116310056A CN116310056A CN202310224855.1A CN202310224855A CN116310056A CN 116310056 A CN116310056 A CN 116310056A CN 202310224855 A CN202310224855 A CN 202310224855A CN 116310056 A CN116310056 A CN 116310056A
- Authority
- CN
- China
- Prior art keywords
- rendered
- dimensional model
- rendering
- parameter
- highlight
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本申请提供一种三维模型的渲染方法、渲染装置、设备及介质,涉及计算机技术领域。该方法包括:赋予初始三维模型胶质质感的基于物理的渲染PBR材质,并为初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;基于次表面散射算法得到第一渲染参数;基于预设反射算法确定待渲染三维模型的第一待渲染区域和第二待渲染区域,并确定各像素点对应的第二渲染参数;根据第一渲染参数和第二渲染参数进行渲染,得到目标三维模型,使得通过分区域渲染操作,可以让目标三维模型在不同视角下均呈现出次表面散射效果,还可以表现为在厚的地方透光性较弱,薄的地方透光性较好的渲染效果,使得胶质质感更为真实,且该渲染效果的呈现不受视角切换的影响。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种三维模型的渲染方法、渲染装置、设备及介质。
背景技术
3D游戏是使用空间立体计算技术实现操作的游戏,从编程实现角度来说游戏基础模型(游戏的人物,场景,基础地形)是使用三维立体模型实现的,游戏的人物角色控制是使用空间立体编程算法实现的。
现有技术中,主要使用颜色贴图来模拟单一方向上果冻材质效果的表现,从而显示某个固定视角的果冻材质的通透效果。
可以看出,现有果冻材质的展示效果主要依赖于事先设置的固定视角下的颜色贴图,因此,将其应用在3D游戏中,则会出现由于视角切换导致的展示效果不佳的问题。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种三维模型的渲染方法、渲染装置、设备及介质,可以在视角切换时依然保证较好的展示效果。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本发明提供一种三维模型的渲染方法,包括:
根据初始三维模型,赋予所述初始三维模型胶质质感的基于物理的渲染PBR材质,并为所述初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;
基于次表面散射算法对所述待渲染三维模型进行处理,得到所述待渲染三维模型对应的第一渲染参数;
基于预设反射算法对所述待渲染三维模型进行处理,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,其中,所述第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,所述第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;
根据所述第一渲染参数和所述第二渲染参数,对所述待渲染三维模型进行渲染,得到目标三维模型。
第二方面,本发明提供一种三维模型的渲染装置,包括:
设置模块,用于根据初始三维模型,赋予所述初始三维模型胶质质感的基于物理的渲染PBR材质,并为所述初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;
第一处理模块,用于基于次表面散射算法对所述待渲染三维模型进行处理,得到所述待渲染三维模型对应的第一渲染参数;
第二处理模块,用于基于预设反射算法对所述待渲染三维模型进行处理,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,其中,所述第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,所述第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;
渲染模块,用于根据所述第一渲染参数和所述第二渲染参数,对所述待渲染三维模型进行渲染,得到目标三维模型。
第三方面,本发明提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如前述实施方式任一所述三维模型的渲染方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如前述实施方式任一所述三维模型的渲染方法的步骤。
本申请的有益效果是:
本申请实施例提供的一种三维模型的渲染方法、渲染装置、设备及介质,包括:根据初始三维模型,赋予初始三维模型胶质质感的基于物理的渲染PBR材质,并为初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;基于次表面散射算法对待渲染三维模型进行处理,得到待渲染三维模型对应的第一渲染参数;基于预设反射算法对待渲染三维模型进行处理,确定待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于第一待渲染区域和第二待渲染区域,确定待渲染三维模型中各像素点对应的第二渲染参数,其中,第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;根据第一渲染参数和第二渲染参数,对待渲染三维模型进行渲染,得到目标三维模型,应用本申请实施例,通过分区域渲染操作,可以使得所得到的目标三维模型在不同的视角下均呈现出次表面散射效果,还可以表现为在厚的地方透光性较弱,薄的地方透光性较好的渲染效果,使得胶质质感更为真实,且该渲染效果的呈现不受视角切换的影响,具有适用性强的特点。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种三维模型的渲染方法的流程示意图;
图2为本申请实施例提供的另一种三维模型的渲染方法的流程示意图;
图3为本申请实施例提供的又一种三维模型的渲染方法的流程示意图;
图4为本申请实施例提供的另一种三维模型的渲染方法的流程示意图;
图5为本申请实施例提供的一种初始三维模型的渲染效果;
图6为本申请实施例提供的又一种三维模型的渲染方法的流程示意图;
图7为本申请实施例提供的另一种三维模型的渲染方法的流程示意图;
图8为本申请实施例提供的又一种三维模型的渲染方法的流程示意图;
图9为本申请实施例提供的一种三维模型的渲染装置的功能模块示意图;
图10为本申请实施例提供的一种电子设备结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在介绍本申请之前,为了更好地理解本申请,首先对本申请中的相关名词进行解释说明:
次表面散射(SubSurface-Scattering,SSS)算法:一种光的传输机制,光穿透物体表面并在材料内部以不规则的角度进行多次反射,穿透物体内部的光纤以不同于直接从物体表面反射时所具有的角度进行返回,SSS算法就是为了模拟这一效果而设计的图形学算法。
基于物理的渲染(Physically Based Rendering,PBR)模式:一种材质的表现模式,利用数值控制材质表现,可控制的表现属性有基础色、法线、高光、粗糙度、金属度、透明度等。
法线贴图:法线贴图是可以应用到3D表面的特殊纹理,不同于以往的纹理只可以用于2D表面。作为凹凸纹理的扩展,法线贴图包括了每个像素的高度值,可以把法线贴图想像成与原表面垂直的点,所有点组成另一个不同的表面。其中,若在特定位置上应用光源,可以生成精确的光照方向和反射,法线贴图就是改变物体材质法线信息的一种素材,在三维制作中经常通过法线贴图在平面模型上实现视觉上的凹凸感以节省计算机计算性能。
菲涅尔算法:用于模拟菲涅尔效果的算法,其中,菲涅尔效果指的是视线垂直于物体表面时,反射较弱,而当视线不垂直物体表面时,夹角越小,反射越明显。
图1为本申请实施例提供的一种三维模型的渲染方法的流程示意图,该方法的执行主体可以是计算机、服务器、处理器等可以进行三维模型渲染操作的电子设备。可选地,本申请实施例所提供的渲染方法可以适应于游戏场景、媒体与广告、3D动画等任意需要呈现胶质质感物体的场景,在此不作限定。如图1所示,该方法可以包括:
S101、根据初始三维模型,赋予初始三维模型胶质质感的基于物理的渲染PBR材质,并为初始三维模型添加预设表面颜色贴图,获得待渲染三维模型。
可选地,该初始三维模型可以是模拟任意物体的三维模型,在此不作限定,基于该初始三维模型,可以为该初始三维模型赋予胶质质感的PBR材质,其中,该胶质质感又可以理解为果冻质感,该胶质质感可以是透明或半透明,在此不作限定。
在一些实施例中,为该初始三维模型赋予胶质质感的PBR材质的过程,可以在预设渲染引擎中的PBR模式下完成,可选地,该预设渲染引擎可以是虚幻引擎4(Unreal Engine4,UE4)、虚幻引擎5(Unreal Engine 5,UE5)等,在此不作限定。当然,需要说明的是,在PBR模式下,还可以设置该PBR材质的属性,比如,法线贴图、自发光通道的参数等,在此不作限定。
其中,预设表面颜色贴图可以是事先设定的,根据不同的应用场景可以自定义不同的预设表面颜色贴图。基于上述说明,进一步地,在为该初始三维模型赋予了胶质质感的PBR材质之后,可以进一步为该初始三维模型添加预设表面颜色贴图,并将添加后初始三维模型作为待渲染三维模型。
S102、基于次表面散射算法对待渲染三维模型进行处理,得到待渲染三维模型对应的第一渲染参数。
可选地,对待渲染三维模型进行次表面散射处理的过程,可以通过预设渲染引擎中的次表面散射模式下进行,可以理解的是,此时所得到的第一渲染参数可以模拟待渲染三维模型光照后光线在待渲染三维模型内多次折射被散射的效果。
S103、基于预设反射算法对待渲染三维模型进行处理,确定待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于第一待渲染区域和第二待渲染区域,确定待渲染三维模型中各像素点对应的第二渲染参数。
其中,第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大。
可选地,该预设反射算法可以是菲涅尔算法,在此不作限定。在一些实施例中,对待渲染三维模型进行反射效果处理时,可以通过预设渲染引擎中的反射模式下进行,可以理解的是,此时所得到的第二渲染参数可以用于模拟视线垂直于待渲染三维模型的表面时,反射较弱,透光性较好,而当视线非垂直于待渲染三维模型的表面时,反射较强,透光性较差的表现效果。
可选地,若该待渲染三维模型为球形模型,则该球形模型从中心至边缘可以依次为第一待渲染区域、第二待渲染区域,当然,需要说明的是,第一待渲染区域和第二待渲染区域的具体分布并不以此为限。通过上述划分,可以对第一待渲染区域和第二待渲染区域,分别计算各像素点对应的第二渲染参数。
需要说明的是,本申请在此并不限定上述S102和S103的执行顺序,根据实际的应用场景,可以是先执行S102,后执行S103,也可以是先执行S103,后执行S102。
S104、根据第一渲染参数和第二渲染参数,对待渲染三维模型进行渲染,得到目标三维模型。
基于上述S102和S103的处理步骤,在得到第一渲染参数和第二渲染参数之后,则可以据此分别对待渲染三维模型进行渲染,以得到目标三维模型,此时所得到的目标三维模型不仅可以在厚的地方透光性较弱,薄的地方透光性较好,且光照照射时,该目标三维模型可以呈现出次表面散射效果,使得胶质质感更为真实,且该渲染效果的呈现不受视角切换的影响。
综上,本申请实施例提供一种三维模型的渲染方法,该方法包括:根据初始三维模型,赋予初始三维模型胶质质感的基于物理的渲染PBR材质,并为初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;基于次表面散射算法对待渲染三维模型进行处理,得到待渲染三维模型对应的第一渲染参数;基于预设反射算法对待渲染三维模型进行处理,确定待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于第一待渲染区域和第二待渲染区域,确定待渲染三维模型中各像素点对应的第二渲染参数,其中,第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;根据第一渲染参数和第二渲染参数,对待渲染三维模型进行渲染,得到目标三维模型,应用本申请实施例,通过分区域渲染操作,可以使得所得到的目标三维模型在不同的视角下均可呈现出次表面散射效果,还可以表现为在厚的地方透光性较弱,薄的地方透光性较好的渲染效果,使得胶质质感更为真实,且该渲染效果的呈现不受视角切换的影响,具有适用性强的特点。
图2为本申请实施例提供的另一种三维模型的渲染方法的流程示意图。可选地,如图2所示,上述基于预设反射算法对待渲染三维模型进行处理,确定待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于第一待渲染区域和第二待渲染区域,确定待渲染三维模型中各像素点对应的第二渲染参数,包括:
S201、基于待渲染三维模型中观察者相机的朝向,对观察者相机的朝向向量和待渲染三维模型中各像素点的法线向量进行点乘运算,得到各像素点对应的点乘结果。
其中,若预设反射算法为菲涅尔算法,可以理解的是,待渲染三维模型在不同的观察视角下所对应的观察者相机的朝向将不同,基于待渲染三维模型中观察者相机的朝向,可以计算该观察者相机的朝向向量和待渲染三维模型中各像素点的法线向量的点乘结果,得到各像素点对应的点乘结果。其中,各像素点对应的点乘结果为0至1的任意数值。
可选地,待渲染三维模型中各像素点的法线向量可以根据待渲染三维模型对应的法线贴图获取,当然,具体获取方式并不以此为限。
S202、根据各像素点对应的点乘结果,确定待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于第一待渲染区域和第二待渲染区域,确定待渲染三维模型中各像素点对应的第二渲染参数。
其中,根据各像素点对应的点乘结果的取值,可以将待渲染三维模型划分为第一待渲染区域和第二待渲染区域,其中,第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向由1至0逐渐减小,第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向由0至1逐渐增大。基于所划分的第一待渲染区域和第二待渲染区域,则可以为各像素点设置不同的第二渲染参数。
可选地,第一待渲染区域包括初始三维模型的中心待渲染区域,第二待渲染区域包括初始三维模型的边缘待渲染区域。上述基于第一待渲染区域和第二待渲染区域,确定待渲染三维模型中各像素点对应的第二渲染参数,包括:
基于预设高光参数,对第一待渲染区域和第二待渲染区域,计算各像素点对应的第二渲染参数,预设高光参数包括:预设高光强度参数、预设高光范围参数以及预设高光颜色参数。
其中,预设高光强度参数,可以用于控制待渲染区域中各像素点的高光的亮度;预设高光范围参数,可以用于控制待渲染区域中各像素点的高光的范围;预设高光颜色参数,可以用于控制待渲染区域中各像素点的透光效果的光照颜色。可选地,具体在计算时,可以基于预设高光强度参数、预设高光范围参数以及预设高光颜色参数,对第一待渲染区域和第二待渲染区域,分区域分别计算各像素点对应的第二渲染参数,可选地,各像素点对应的第二渲染参数可以包括:高光强度渲染参数、高光范围渲染参数以及高光颜色参数等,在此不作限定。
应用本申请实施例,在渲染过程中,可以基于该预设高光参数快速确定各像素点对应的第二渲染参数,可以简化计算,保证本申请实施例所提供的方法可以在极低运行消耗下运行,适用性更强。
图3为本申请实施例提供的又一种三维模型的渲染方法的流程示意图。可选地,如图3所示,上述基于所述预设高光参数,对第一待渲染区域和第二待渲染区域,计算各像素点对应的第二渲染参数,包括:
S401、根据预设第一高光参数,计算第一待渲染区域中各第一像素点对应的第一高光渲染参数。
其中,预设第一高光参数包括:第一高光强度参数、第一高光范围参数以及第一高光颜色参数。预设第一高光参数又可理解为中心高光参数,第一高光强度参数、第一高光范围参数的取值可以是任意值,第一高光强度参数可以用于控制第一待渲染区域中各第一像素点的高光的亮度,第一高光范围参数可以用于控制第一待渲染区域中各第一像素点的高光的范围;第一高光颜色参数可以是任意颜色取值,可以用于控制第一待渲染区域中各第一像素点的透光效果的光照颜色。
在一些实施例中,第一高光强度参数的取值可以为1,第一高光范围参数的取值可以为19.8,第一高光颜色参数的取值可以为FF0000FF,也即为红色,当然,各参数的具体取值方式并不以此为限。
S402、根据预设第二高光参数,计算第二待渲染区域中各第二像素点对应的第二高光渲染参数。
其中,预设第二高光参数又可理解为边缘高光参数,第二高光强度参数、第二高光范围参数的取值可以是任意值,第二高光颜色参数可以是任意颜色取值,可以用于控制第二待渲染区域中透光效果的光照颜色。
其中,预设第二高光参数包括:第二高光强度参数、第二高光范围参数以及第二高光颜色参数。
在一些实施例中,第二高光强度参数的取值可以为2,第二高光范围参数的取值可以为12.8,第二高光颜色参数的取值可以为FF2A00FF,也即深红色(赭红色)。当然,各参数的具体取值方式并不以此为限。
S403、叠加第一高光渲染参数和第二高光渲染参数,得到各像素点对应的第二渲染参数。
基于上述说明,在得到第一高光渲染参数和第二高光渲染参数之后,可以对这两者参数进行叠加,从而得到各像素点对应的第二渲染参数,其中,基于各像素点对应的第二渲染参数渲染各像素点时,可以呈现视线垂直于待渲染三维模型的表面时,反射较弱,透光性较好,而当视线非垂直于待渲染三维模型的表面时,反射较强,透光性较差的表现效果。
图4为本申请实施例提供的另一种三维模型的渲染方法的流程示意图。上述第一高光渲染参数包括:第一高光强度渲染参数、第一高光范围渲染参数以及第一高光颜色渲染参数。以第一待渲染区域为例进行说明,可选地,如图4所示,上述根据预设第一高光参数,计算第一待渲染区域中各第一像素点对应的第一高光渲染参数,包括:
S501、将第一高光强度参数与第一待渲染区域内各第一像素点对应的点乘结果的乘积作为各第一像素点对应的第一高光强度渲染参数。
S502、将第一待渲染区域内各第一像素点对应的点乘结果作为底数,第一高光范围参数作为指数,计算各第一像素点对应的第一高光范围渲染参数。
其中,基于第一待渲染区域内各第一像素点对应的第一高光强度渲染参数和第一高光范围渲染参数的计算原理可知,第一待渲染区域内各第一像素点对应的点乘结果越大,该像素点对应的第一高光强度渲染参数越大,第一高光范围渲染参数越大。
S503、将第一高光颜色参数与第一待渲染区域内各第一像素点对应的点乘结果的乘积作为各第一像素点对应的第一高光颜色渲染参数。
基于各第一像素点对应的第一高光颜色渲染参数的计算原理,第一待渲染区域内各第一像素点对应的点乘结果不同时,各第一像素点对应的第一高光颜色渲染参数将不同。
在一些实施例中,上述第二高光渲染参数包括:第二高光强度渲染参数、第二高光范围渲染参数以及第二高光颜色渲染参数。可选地,那么可以参见上述各第一像素点对应的第一高光渲染参数的计算过程,计算各第二像素点对应的第二高光渲染参数,在此不再赘述。
值得说明的是,第二高光强度参数越大,基于该第二高光强度参数得到的第二高光强度渲染参数将越大,那么根据第二高光强度渲染参数对第二待渲染区域中各像素进行渲染时,各像素点对应的亮度将越大;此外,对于第二高光范围参数来说,由于需要将第二待渲染区域内各像素点对应的点乘结果作为底数,第二高光范围参数作为指数,计算各像素点对应的第二高光范围渲染参数,因此,对于第二待渲染区域中的各像素点来说,根据第二高光范围渲染参数对第二待渲染区域中各像素进行渲染时,各像素点对应的点乘结果越接近于0,则该像素点对应的自发光亮度越弱。
图5为本申请实施例提供的一种初始三维模型的渲染效果,从该图5中可以看出,应用本申请实施例,可以呈现出更为真实、自然的胶质质感,且该渲染效果的呈现不受视角切换的影响,也即在各个视角下均可以保证此胶质质感,具有适用性更强的特点。
图6为本申请实施例提供的又一种三维模型的渲染方法的流程示意图。可选地,如图6所示,上述方法还包括:
S601、响应于对目标三维模型的旋转操作,获取旋转操作对应的观察者相机的当前朝向。
在一些实施例中,将本申请实施例所提供的方法应用于游戏场景中,考虑到实际游戏场景中需要对该目标三维模型通过旋转操作进行视角切换,那么响应于该旋转操作,可以在游戏场景中实时获取该旋转操作对应的观察者相机的当前朝向。
S602、基于观察者相机的当前朝向,更新目标三维模型对应的第二渲染参数。
基于该观察者相机的当前朝向,可以计算观察者相机的当前朝向和待渲染三维模型中各像素点的法线向量的点乘结果,并据此更新各像素点对应的第二渲染参数,其中,具体更新过程可参见上述S301和S302的内容,在此不再赘述。
S603、根据更新后的第二渲染参数,重新渲染目标三维模型。
基于前述说明,可以看出,若对观察者相机的朝向进行了调整时,那么只需将该观察者相机的当前朝向传入上述渲染逻辑中,而无需调整其他参数,因此,能够在运行消耗较低的情况下模拟胶质质感在现实世界中材质的表现效果,也即在优化渲染效率的同时,还能保证真实的渲染效果。特别地,将本申请实施例应用于游戏场景中,可以用于渲染游戏场景中的果冻材质的虚拟对象,展示真实的材质效果,且渲染过程中运行消耗较低,可以提高游戏运行的流畅度,避免游戏卡顿。
图7为本申请实施例提供的另一种三维模型的渲染方法的流程示意图。可选地,如图7所示,上述方法还包括:
S701、响应于对目标三维模型中预设渲染参数的调整操作,采用调整操作对应的目标渲染参数调整目标三维模型的渲染效果。
其中,预设渲染参数包括下述至少一项:金属度、粗糙度、高光度、透明度。
在一些实施例中,当然,也可以对上述得到的目标三维模型作进一步地渲染参数的调整,比如,可以调整目标三维模型的金属度、粗糙度、高光度、透明度等,在此不作限定,根据实际的应用场景可以灵活选择。
比如,在一些实施例中,可以通过预设渲染引擎进一步调整目标三维模型中金属度为0.2,粗糙度为0.24,高光度为1,当然,具体调整数值并不以此为限。可选地,对目标三维模型中预设渲染参数进行调整时,可以在预设渲染引擎中的PBR模式下完成,当然,具体调整方式并不以此为限。
图8为本申请实施例提供的又一种三维模型的渲染方法的流程示意图。可选地,如图8所示,上述根据第一渲染参数和第二渲染参数,对待渲染三维模型进行渲染,得到目标三维模型,包括:
S801、根据第一渲染参数,对待渲染三维模型进行第一渲染操作,得到第一待渲染三维模型。
S802、根据第二渲染参数,调整第一待渲染三维模型对应的自发光通道中的渲染参数,得到目标三维模型。
可选地,对待渲染三维模型进行渲染时,可以先采用上述第一渲染参数对待渲染三维模型进行第一次渲染操作,得到第一待渲染三维模型;然后,基于上述第二渲染参数,调整第一待渲染三维模型对应的自发光通道中各像素点对应的渲染参数,从而得到目标三维模型。
需要说明的是,本申请在此并不限定具体的渲染步骤,当然,也可以是先根据上述第二渲染参数,调整待渲染三维模型对应的自发光通道中的渲染参数,然后基于该渲染结果,采用上述第一渲染参数作进一步地渲染,得到目标三维模型,根据实际的应用场景可以灵活调整渲染顺序。
图9为本申请实施例提供的一种三维模型的渲染装置的功能模块示意图,该装置基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考方法实施例中的相应内容。如图9所示,该渲染装置可以包括:
设置模块110,用于根据初始三维模型,赋予所述初始三维模型胶质质感的基于物理的渲染PBR材质,并为所述初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;
第一处理模块120,用于基于次表面散射算法对所述待渲染三维模型进行处理,得到所述待渲染三维模型对应的第一渲染参数;
第二处理模块130,用于基于预设反射算法对所述待渲染三维模型进行处理,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,其中,所述第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,所述第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;
渲染模块140,用于根据所述第一渲染参数和所述第二渲染参数,对所述待渲染三维模型进行渲染,得到目标三维模型。
可选地,上述第二处理模块130,可具体用于基于所述待渲染三维模型中观察者相机的朝向,对所述观察者相机的朝向向量和所述待渲染三维模型中各像素点的法线向量进行点乘运算,得到各像素点对应的点乘结果;
根据各所述像素点对应的点乘结果,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数。
可选地,所述第一待渲染区域包括所述初始三维模型的中心待渲染区域,第二待渲染区域包括所述初始三维模型的边缘待渲染区域;上述第二处理模块130,可具体用于基于预设高光参数,对所述第一待渲染区域和所述第二待渲染区域,计算各所述像素点对应的第二渲染参数,所述预设高光参数包括:预设高光强度参数、预设高光范围参数以及预设高光颜色参数。
可选地,上述第二处理模块130,可具体用于根据预设第一高光参数,计算所述第一待渲染区域中各第一像素点对应的第一高光渲染参数,所述预设第一高光参数包括:第一高光强度参数、第一高光范围参数以及第一高光颜色参数;
根据预设第二高光参数,计算所述第二待渲染区域中各第二像素点对应的第二高光渲染参数,所述预设第二高光参数包括:第二高光强度参数、第二高光范围参数以及第二高光颜色参数;
叠加所述第一高光渲染参数和所述第二高光渲染参数,得到各所述像素点对应的第二渲染参数。
可选地,所述第一高光渲染参数包括:第一高光强度渲染参数、第一高光范围渲染参数以及第一高光颜色渲染参数。
上述第二处理模块130,可具体用于将所述第一高光强度参数与所述第一待渲染区域内各第一像素点对应的点乘结果的乘积作为各所述第一像素点对应的第一高光强度渲染参数;
将所述第一待渲染区域内各第一像素点对应的点乘结果作为底数,所述第一高光范围参数作为指数,计算各所述第一像素点对应的第一高光范围渲染参数;
将所述第一高光颜色参数与所述第一待渲染区域内各第一像素点对应的点乘结果的乘积作为各所述第一像素点对应的第一高光颜色渲染参数。
可选地,上述渲染模块140,还可以用于响应于对所述目标三维模型的旋转操作,获取所述旋转操作对应的观察者相机的当前朝向;
基于所述观察者相机的当前朝向,更新所述目标三维模型对应的第二渲染参数;
根据更新后的所述第二渲染参数,重新渲染所述目标三维模型。
可选地,上述渲染模块140,还可以用于响应于对所述目标三维模型中预设渲染参数的调整操作,采用所述调整操作对应的目标渲染参数调整所述目标三维模型的渲染效果,所述预设渲染参数包括下述至少一项:金属度、粗糙度、高光度、透明度。
可选地,上述渲染模块140,具体用于根据所述第一渲染参数,对所述待渲染三维模型进行第一渲染操作,得到第一待渲染三维模型;
根据所述第二渲染参数,调整所述第一待渲染三维模型对应的自发光通道中的渲染参数,得到所述目标三维模型。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器,或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图10为本申请实施例提供的一种电子设备结构示意图,该电子设备可以集成于上述的渲染装置中。如图10所示,该电子设备可以包括:处理器210、存储介质220和总线230,存储介质220存储有处理器210可执行的机器可读指令,当电子设备运行时,处理器210与存储介质220之间通过总线230通信,处理器210执行机器可读指令,以执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种三维模型的渲染方法,其特征在于,包括:
根据初始三维模型,赋予所述初始三维模型胶质质感的基于物理的渲染PBR材质,并为所述初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;
基于次表面散射算法对所述待渲染三维模型进行处理,得到所述待渲染三维模型对应的第一渲染参数;
基于预设反射算法对所述待渲染三维模型进行处理,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和所述第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,其中,所述第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,所述第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;
根据所述第一渲染参数和所述第二渲染参数,对所述待渲染三维模型进行渲染,得到目标三维模型。
2.根据权利要求1所述的方法,其特征在于,所述基于预设反射算法对所述待渲染三维模型进行处理,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和所述第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,包括:
基于所述待渲染三维模型中观察者相机的朝向,对所述观察者相机的朝向向量和所述待渲染三维模型中各像素点的法线向量进行点乘运算,得到各像素点对应的点乘结果;
根据各所述像素点对应的点乘结果,确定所述待渲染三维模型的第一待渲染区域和所述第二待渲染区域,并基于所述第一待渲染区域和所述第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数。
3.根据权利要求2所述的方法,其特征在于,所述第一待渲染区域包括所述初始三维模型的中心待渲染区域,第二待渲染区域包括所述初始三维模型的边缘待渲染区域;
所述基于所述第一待渲染区域和所述第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,包括:
基于预设高光参数,对所述第一待渲染区域和所述第二待渲染区域,计算各所述像素点对应的第二渲染参数,所述预设高光参数包括:预设高光强度参数、预设高光范围参数以及预设高光颜色参数。
4.根据权利要求3所述的方法,其特征在于,所述基于所述预设高光参数,对所述第一待渲染区域和所述第二待渲染区域,计算各所述像素点对应的第二渲染参数,包括:
根据预设第一高光参数,计算所述第一待渲染区域中各第一像素点对应的第一高光渲染参数,所述预设第一高光参数包括:第一高光强度参数、第一高光范围参数以及第一高光颜色参数;
根据预设第二高光参数,计算所述第二待渲染区域中各第二像素点对应的第二高光渲染参数,所述预设第二高光参数包括:第二高光强度参数、第二高光范围参数以及第二高光颜色参数;
叠加所述第一高光渲染参数和所述第二高光渲染参数,得到各所述像素点对应的第二渲染参数。
5.根据权利要求4所述的方法,其特征在于,所述第一高光渲染参数包括:第一高光强度渲染参数、第一高光范围渲染参数以及第一高光颜色渲染参数;
所述根据预设第一高光参数,计算所述第一待渲染区域中各第一像素点对应的第一高光渲染参数,包括:
将所述第一高光强度参数与所述第一待渲染区域内各第一像素点对应的点乘结果的乘积作为各所述第一像素点对应的第一高光强度渲染参数;
将所述第一待渲染区域内各第一像素点对应的点乘结果作为底数,所述第一高光范围参数作为指数,计算各所述第一像素点对应的第一高光范围渲染参数;
将所述第一高光颜色参数与所述第一待渲染区域内各第一像素点对应的点乘结果的乘积作为各所述第一像素点对应的第一高光颜色渲染参数。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于对所述目标三维模型的旋转操作,获取所述旋转操作对应的观察者相机的当前朝向;
基于所述观察者相机的当前朝向,更新所述目标三维模型对应的第二渲染参数;
根据更新后的所述第二渲染参数,重新渲染所述目标三维模型。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于对所述目标三维模型中预设渲染参数的调整操作,采用所述调整操作对应的目标渲染参数调整所述目标三维模型的渲染效果,所述预设渲染参数包括下述至少一项:金属度、粗糙度、高光度、透明度。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述根据所述第一渲染参数和所述第二渲染参数,对所述待渲染三维模型进行渲染,得到目标三维模型,包括:
根据所述第一渲染参数,对所述待渲染三维模型进行第一渲染操作,得到第一待渲染三维模型;
根据所述第二渲染参数,调整所述第一待渲染三维模型对应的自发光通道中的渲染参数,得到所述目标三维模型。
9.一种三维模型的渲染装置,其特征在于,包括:
设置模块,用于根据初始三维模型,赋予所述初始三维模型胶质质感的基于物理的渲染PBR材质,并为所述初始三维模型添加预设表面颜色贴图,获得待渲染三维模型;
第一处理模块,用于基于次表面散射算法对所述待渲染三维模型进行处理,得到所述待渲染三维模型对应的第一渲染参数;
第二处理模块,用于基于预设反射算法对所述待渲染三维模型进行处理,确定所述待渲染三维模型的第一待渲染区域和第二待渲染区域,并基于所述第一待渲染区域和第二待渲染区域,确定所述待渲染三维模型中各像素点对应的第二渲染参数,其中,所述第一待渲染区域中各第一像素点对应的点乘结果朝观察者相机的方向逐渐减小,所述第二待渲染区域中各第二像素点对应的点乘结果朝观察者相机的方向逐渐增大;
渲染模块,用于根据所述第一渲染参数和所述第二渲染参数,对所述待渲染三维模型进行渲染,得到目标三维模型。
10.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1-8任一所述三维模型的渲染方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-8任一所述三维模型的渲染方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310224855.1A CN116310056A (zh) | 2023-03-02 | 2023-03-02 | 三维模型的渲染方法、渲染装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310224855.1A CN116310056A (zh) | 2023-03-02 | 2023-03-02 | 三维模型的渲染方法、渲染装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116310056A true CN116310056A (zh) | 2023-06-23 |
Family
ID=86786462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310224855.1A Pending CN116310056A (zh) | 2023-03-02 | 2023-03-02 | 三维模型的渲染方法、渲染装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116310056A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117876555A (zh) * | 2024-03-12 | 2024-04-12 | 西安城市发展资源信息有限公司 | 一种基于poi检索的三维模型数据高效渲染方法 |
CN117876555B (zh) * | 2024-03-12 | 2024-05-31 | 西安城市发展资源信息有限公司 | 一种基于poi检索的三维模型数据高效渲染方法 |
-
2023
- 2023-03-02 CN CN202310224855.1A patent/CN116310056A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117876555A (zh) * | 2024-03-12 | 2024-04-12 | 西安城市发展资源信息有限公司 | 一种基于poi检索的三维模型数据高效渲染方法 |
CN117876555B (zh) * | 2024-03-12 | 2024-05-31 | 西安城市发展资源信息有限公司 | 一种基于poi检索的三维模型数据高效渲染方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021129044A1 (zh) | 对象渲染方法和装置、存储介质及电子装置 | |
CN112316420B (zh) | 模型渲染方法、装置、设备及存储介质 | |
US8803879B1 (en) | Omnidirectional shadow texture mapping | |
CN111899325B (zh) | 晶石模型的渲染方法、装置、电子设备及存储介质 | |
US5870098A (en) | Method for rendering shadows on a graphical display | |
CN111369655B (zh) | 渲染方法、装置和终端设备 | |
US8115783B2 (en) | Methods of and apparatus for processing computer graphics | |
US20070139408A1 (en) | Reflective image objects | |
KR20090057994A (ko) | 광선 추적 이미지 처리 시스템의 픽셀 컬러 결정 | |
WO1998038591A9 (en) | Method for rendering shadows on a graphical display | |
US10127711B2 (en) | Method and apparatus rendering caustics | |
WO2014159325A1 (en) | System and method for remote generation indirect illumination sources in three-dimensional graphics | |
CN112446943A (zh) | 图像渲染的方法、装置及计算机可读存储介质 | |
RU2422902C2 (ru) | Двумерная/трехмерная комбинированная визуализация | |
CN112184873A (zh) | 分形图形创建方法、装置、电子设备和存储介质 | |
CN114663632A (zh) | 基于空间位置的光照显示虚拟物体的方法及设备 | |
Hu et al. | Interactive approximate rendering of reflections, refractions, and caustics | |
JP5916764B2 (ja) | 仮想環境における隠蔽の推定方法 | |
CN116883607B (zh) | 基于辐射传输的虚拟现实场景生成系统 | |
CN115965735B (zh) | 纹理贴图的生成方法和装置 | |
CN116310056A (zh) | 三维模型的渲染方法、渲染装置、设备及介质 | |
CN112017126A (zh) | 增强的局部对比度 | |
US20180005432A1 (en) | Shading Using Multiple Texture Maps | |
KR20030083962A (ko) | 3차원 렌더링 이미지에 쉐이딩 효과를 적용하는 방법 및이를 구현한 프로그램을 저장한 정보저장매체 | |
JP6626698B2 (ja) | レンダリング計算方法および表示装置 |
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 |