CN114972606A - 一种半透明物体阴影效果的渲染方法及装置 - Google Patents
一种半透明物体阴影效果的渲染方法及装置 Download PDFInfo
- Publication number
- CN114972606A CN114972606A CN202210812470.2A CN202210812470A CN114972606A CN 114972606 A CN114972606 A CN 114972606A CN 202210812470 A CN202210812470 A CN 202210812470A CN 114972606 A CN114972606 A CN 114972606A
- Authority
- CN
- China
- Prior art keywords
- light source
- scene
- energy
- determining
- light
- 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/005—General purpose rendering architectures
-
- 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
- G06T15/60—Shadow generation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
本申请涉及一种半透明物体阴影效果的渲染方法及装置,所述方法包括:从虚拟场景中的场景点向虚拟场景中的光源方向构建第一光线,所述场景点位于半透明物体之外;根据第一光线与半透明物体的相交情况确定场景点是否落入半透明物体的阴影中;在根据第一光线与半透明物体相交确定场景点落入半透明物体的阴影的情况下,根据半透明物体的透光信息和光源的光源能量确定场景点对应的目标光照能量;按照目标光照能量渲染场景点。本申请解决了在画面上渲染半透明物体的阴影效果时渲染效率较低的技术问题。
Description
本申请为申请号:202110719139.1的分案申请
技术领域
本申请涉及计算机领域,尤其涉及一种半透明物体阴影效果的渲染方法及装置。
背景技术
随着互联网的发展,对画面渲染的性能要求越来越高,在目前的渲染技术中,如果要渲染的虚拟场景中存在半透明物体,则需要渲染该半透明物体的阴影效果。
目前的渲染方式中,一种渲染半透明物体阴影效果的方式是从观察点发出一根光线与场景中的某个点(比如地面)相交,在该点的一定范围内从该点发出大量光线,根据每一根光线的路径确定该点是否在半透明物体的影子范围内。该方式需要构建的光线数量过高,导致渲染效率很低。另一种渲染半透明物体阴影效果的方式是光子映射的方式,从光源发出光线得到与场景的交点,在交点出创造「光子」照亮一定的范围,在观察点收集光子信息,从观察点发出光线与场景相交,检测周围是否有光子,将光子的信息进行叠加得到该点的颜色。该方式需要在原有渲染流程的基础上,增加从光源构建很多条光线以创建「光子」以及在视野范围内计算光子贡献的步骤,另外,很多光子可能不在视野范围内,这样会对资源造成浪费,导致渲染效率很低。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请提供了一种半透明物体阴影效果的渲染方法及装置,以至少解决相关技术中在画面上渲染半透明物体的阴影效果时渲染效率较低的技术问题。
根据本申请实施例的一个方面,提供了一种半透明物体阴影效果的渲染方法,包括:从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线,所述场景点位于半透明物体之外;根据所述第一光线与所述半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;按照所述目标光照能量渲染所述场景点。
根据本申请实施例的另一方面,还提供了一种半透明物体阴影效果的渲染装置,包括:构建模块,用于从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线,所述场景点位于半透明物体之外;第一确定模块,用于根据所述第一光线与所述半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;第二确定模块,用于在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;渲染模块,用于按照所述目标光照能量渲染所述场景点。
根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的半透明物体阴影效果的渲染方法。
根据本申请实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器通过计算机程序执行上述的半透明物体阴影效果的渲染方法。
在本申请实施例中,采用从虚拟场景中的场景点向虚拟场景中的光源方向构建第一光线;根据第一光线与半透明物体的相交情况确定场景点是否落入半透明物体的阴影中;在根据第一光线与半透明物体相交确定场景点落入半透明物体的阴影的情况下,根据半透明物体的透光信息和光源的光源能量确定场景点对应的目标光照能量;按照目标光照能量渲染场景点的方式,从虚拟场景中的场景点向虚拟场景中的光源方向构建第一光线,如果确定场景点落入半透明物体的阴影,则根据半透明物体的透光信息和光源的光源能量确定所述场景点对应的目标光照能量,按照该目标光照能量渲染场景点,达到了以较小的计算量模拟计算半透明物体的阴影效果,减少计算开销的目的,从而实现了提高在画面上渲染半透明物体的阴影效果时渲染效率的技术效果,进而解决了在画面上渲染半透明物体的阴影效果时渲染效率较低的技术问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的半透明物体阴影效果的渲染方法的硬件环境的示意图;
图2是根据本申请实施例的一种可选的半透明物体阴影效果的渲染方法的流程示意图;
图3是根据本申请实施例的一种可选的半透明物体阴影效果的渲染过程的示意图;
图4是根据本申请实施例的一种可选的半透明物体阴影效果的渲染装置的示意图;
图5是根据本申请实施例的一种电子装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例的一方面,提供了一种半透明物体阴影效果的渲染的方法实施例。
可选地,在本实施例中,上述半透明物体阴影效果的渲染方法可以应用于如图1所示的由终端101和服务器103所构成的硬件环境中。如图1所示,服务器103通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务(如游戏服务、应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器103提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101并不限定于PC、手机、平板电脑等。本申请实施例的半透明物体阴影效果的渲染方法可以由服务器103来执行,也可以由终端101来执行,还可以是由服务器103和终端101共同执行。其中,终端101执行本申请实施例的半透明物体阴影效果的渲染方法也可以是由安装在其上的客户端来执行。
图2是根据本申请实施例的一种可选的半透明物体阴影效果的渲染方法的流程图,如图2所示,该方法可以包括以下步骤:
步骤S202,从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线;所述场景点位于半透明物体之外;
步骤S204,根据所述第一光线与半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;
步骤S206,在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;
步骤S208,按照所述目标光照能量渲染所述场景点。
通过上述步骤S202至步骤S208,从虚拟场景中的场景点向虚拟场景中的光源方向构建第一光线,如果确定场景点落入半透明物体的阴影,则根据半透明物体的透光信息和光源的光源能量确定所述场景点对应的目标光照能量,按照该目标光照能量渲染场景点,达到了以较小的计算量模拟计算半透明物体的阴影效果,减少计算开销的目的,从而实现了提高在画面上渲染半透明物体的阴影效果时渲染效率的技术效果,进而解决了在画面上渲染半透明物体的阴影效果时渲染效率较低的技术问题。
在步骤S202提供的技术方案中,上述虚拟场景可以但不限于包括游戏场景,动画场景等等。
可选地,在本实施例中,虚拟场景中的光源可以但不限于包括一个或者多个光源,可以向每个光源方向构建第一光线,虚拟场景中半透明物体的阴影效果可以是所有光源下的叠加效果。
在实施例中,提供了一种虚拟场景中半透明物体阴影效果的渲染过程,图3是根据本申请实施例的一种可选的阴影效果的渲染过程的示意图,从虚拟场景中的场景点M向虚拟场景的光源方向构建一条光线B。
作为一种可选的实施例,从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线包括:
S11,沿着观察点到待渲染画面上的像素点的方向,构建射向所述虚拟场景中的第二光线;
S12,确定所述第二光线与所述虚拟场景之间的交点为所述场景点;
S13,从所述场景点向所述光源方向构建光线,得到所述第一光线。
可选地,在本实施例中,可以但不限于采用从观察点向待渲染画面上的像素点发出光线的方式来从虚拟场景中找到需要渲染到待渲染画面上的场景点。再从需要渲染的场景点向光源方向构建光线。
比如:如图3所示,沿着观察点到待渲染画面(Screen)上的像素点的方向,构建射向虚拟场景中的光线A,确定光线A与虚拟场景之间的交点为场景点M,再从场景点M向光源方向构建光线B。
在步骤S204提供的技术方案中,如果第一光线与半透明物体相交则可以确定场景点落入半透明物体的阴影中,如果第一光线与半透明物体不相交则可以确定场景点未落入半透明物体的阴影中。
在步骤S206提供的技术方案中,半透明物体的透光信息可以但不限于包括:半透明物体的不透明度,半透明物体对光的吸收率等等。
可选地,在本实施例中,根据半透明物体的透光信息可以确定半透明物体对于场景点所接收到的光照能量的影响。目标光照能量是场景点在半透明物体的影响下所接收到的光照能量。
作为一种可选的实施例,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量包括以下之一:
S21,根据所述半透明物体的不透明度、所述第一光线与所述半透明物体的相交次数以及所述光源能量确定所述目标光照能量;
S22,根据所述半透明物体对光的吸收率、所述第一光线在所述半透明物体中穿过的距离以及所述光源能量确定所述目标光照能量。
可选地,在本实施例中,一种确定场景点的目标光照能量是方式是使用半透明物体的不透明度、第一光线与半透明物体的相交次数以及光源的光源能量进行计算。根据半透明物体的不透明度、第一光线与半透明物体的相交次数可以确定出光源的光源能量在半透明物体中的衰减比例,光源能量与该衰减比例的能量(或称为能量损耗值)的差值即为目标光照能量。比如:将所述不透明度,所述相交次数和所述光源能量的乘积值确定为能量损耗值;将所述光源能量与所述能量损耗值之间的差值确定为所述目标光照能量。
可选地,在本实施例中,另一种确定场景点的目标光照能量是方式是使用半透明物体对光的吸收率、第一光线在半透明物体中穿过的距离以及光源的光源能量进行计算。根据半透明物体对光的吸收率以及第一光线在半透明物体中穿过的距离可以得到剩余能量比例,该剩余能量比例与光源的光源能量的乘积即为目标光照能量。
作为一种可选的实施例,根据所述半透明物体的不透明度、所述第一光线与所述半透明物体的相交次数以及所述光源能量确定所述目标光照能量包括:
S31,将所述不透明度与所述相交次数的乘积值确定为能量衰减比例;
S32,将1与所述能量衰减比例的差值确定为剩余能量比例;
S33,将所述剩余能量比例与所述光源能量的乘积值确定为所述目标光照能量。
可选地,在本实施例中,可以但不限于采用以下公式确定目标光照能量LM,即LM=(1-n×Opacity)×L,其中,n为第一光线与半透明物体的相交次数,Opacity为半透明物体的不透明度,L为光源能量。
作为一种可选的实施例,根据所述半透明物体对光的吸收率、所述第一光线在所述半透明物体中穿过的距离以及所述光源能量确定所述目标光照能量包括:
S41,将所述吸收率与所述距离相乘,得到目标参数值;
S42,计算所述目标参数值的指数函数值;
S43,将所述指数函数值与所述光源能量相乘,得到所述目标光照能量。
可选地,在本实施例中,可以但不限于采用以下公式确定目标光照能量LM,即LM=exp(Ab·dis)·L,其中,Ab为半透明物体对光的吸收率,dis为第一光线在半透明物体中穿过的距离,exp(Ab·dis)为目标参数值的指数函数值,L为光源能量。
作为一种可选的实施例,根据所述半透明物体的透光信息和所述光源能量确定所述场景点对应的目标光照能量包括:
S51,根据所述半透明物体的透光信息和所述光源能量确定中间光照能量;
S52,计算所述第一光线与所述半透明物体的每个交点上所述第一光线与所述半透明物体表面法线的点乘,得到多个点乘值;
S53,将所述中间光照能量与所述多个点乘值的乘积确定为所述目标光照能量。
可选地,在本实施例中,为了使半透明物体的阴影效果更加准确逼真,还可以在阴影部分渲染上模拟焦散效果。在得到上述场景点M所接收到的光照能量LM的基础上,将LM作为中间光照能量,计算光线B与半透明物体的每个交点上光线B与半透明物体表面法线的点乘,用中间光照能量LM与各个交点上得到的点乘值相乘,作为场景点M最终的目标光照能量。
比如:光线B与半透明物体有两个交点,计算得到两个点乘值dot1和dot2,那么场景点M的目标光照能量LMfinal=LM×dot1×dot2。
在步骤S208提供的技术方案中,按照目标光照能量可以但不限于将上述场景点渲染到待渲染画面上的相应像素点上。
作为一种可选的实施例,按照所述目标光照能量渲染所述场景点包括:
S61,将所述像素点确定为所述场景点在所述待渲染画面上对应的位置;
S62,使用所述目标光照能量在所述待渲染画面上渲染所述像素点,得到渲染画面。
可选地,在本实施例中,第二光线与待渲染画面相交的像素点即为渲染构建出第一光线的场景点的位置。使用目标光照能量在待渲染画面上渲染像素点,得到渲染画面。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台电子设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
根据本申请实施例的另一个方面,还提供了一种用于实施上述半透明物体阴影效果的渲染方法的阴影效果的渲染装置。图4是根据本申请实施例的一种可选的阴影效果的渲染装置的示意图,如图4所示,该装置可以包括:
构建模块42,用于从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线;所述场景点位于半透明物体之外;
第一确定模块44,用于根据所述第一光线与半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;
第二确定模块46,用于在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;
渲染模块48,用于按照所述目标光照能量渲染所述场景点。
需要说明的是,该实施例中的构建模块42可以用于执行本申请实施例中的步骤S202,该实施例中的第一确定模块44可以用于执行本申请实施例中的步骤S204,该实施例中的第二确定模块46可以用于执行本申请实施例中的步骤S206,该实施例中的渲染模块48可以用于执行本申请实施例中的步骤S208。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。
通过上述模块,从虚拟场景中的场景点向虚拟场景中的光源方向构建第一光线,如果确定场景点落入半透明物体的阴影,则根据半透明物体的透光信息和光源的光源能量确定所述场景点对应的目标光照能量,按照该目标光照能量渲染场景点,达到了以较小的计算量模拟计算半透明物体的阴影效果,减少计算开销的目的,从而实现了提高在画面上渲染半透明物体的阴影效果时渲染效率的技术效果,进而解决了在画面上渲染半透明物体的阴影效果时渲染效率较低的技术问题。
作为一种可选的实施例,所述第二确定模块包括以下之一:
第一确定单元,用于根据所述半透明物体的不透明度、所述第一光线与所述半透明物体的相交次数以及所述光源能量确定所述目标光照能量;
第二确定单元,用于根据所述半透明物体对光的吸收率、所述第一光线在所述半透明物体中穿过的距离以及所述光源能量确定所述目标光照能量。
作为一种可选的实施例,所述第一确定单元用于:
将所述不透明度与所述相交次数的乘积值确定为能量衰减比例;
将1与所述能量衰减比例的差值确定为剩余能量比例;
将所述剩余能量比例与所述光源能量的乘积值确定为所述目标光照能量。
作为一种可选的实施例,所述第二确定单元用于:
将所述吸收率与所述距离相乘,得到目标参数值;
计算所述目标参数值的指数函数值;
将所述指数函数值与所述光源能量相乘,得到所述目标光照能量。
作为一种可选的实施例,所述第二确定模块包括:
第三确定单元,用于根据所述半透明物体的透光信息和所述光源能量确定中间光照能量;
计算单元,用于计算所述第一光线与所述半透明物体的每个交点上所述第一光线与所述半透明物体表面法线的点乘,得到多个点乘值;
第四确定单元,用于将所述中间光照能量与所述多个点乘值的乘积确定为所述目标光照能量。
作为一种可选的实施例,所述构建模块包括:
第一构建单元,用于沿着观察点到待渲染画面上的像素点的方向,构建射向所述虚拟场景中的第二光线;
第五确定单元,用于确定所述第二光线与所述虚拟场景之间的交点为所述场景点;
第二构建单元,用于从所述场景点向所述光源方向构建光线,得到所述第一光线。
作为一种可选的实施例,所述渲染模块包括:
第六确定单元,用于将所述像素点确定为所述场景点在所述待渲染画面上对应的位置;
渲染单元,用于使用所述目标光照能量在所述待渲染画面上渲染所述像素点,得到渲染画面。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
根据本申请实施例的另一个方面,还提供了一种用于实施上述半透明物体阴影效果的渲染方法的电子装置。
图5是根据本申请实施例的一种电子装置的结构框图,如图5所示,该电子装置可以包括:一个或多个(图中仅示出一个)处理器501、存储器503、以及传输装置505,如图5所示,该电子装置还可以包括输入输出设备507。
其中,存储器503可用于存储软件程序以及模块,如本申请实施例中的半透明物体阴影效果的渲染方法和装置对应的程序指令/模块,处理器501通过运行存储在存储器503内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的半透明物体阴影效果的渲染方法。存储器503可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器503可进一步包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至电子装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置505用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置505包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置505为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器503用于存储应用程序。
处理器501可以通过传输装置505调用存储器503存储的应用程序,以执行下述步骤:
从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线;
根据所述第一光线与半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;
在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;
按照所述目标光照能量渲染所述场景点。
采用本申请实施例,提供了一种阴影效果的渲染的方案。从虚拟场景中的场景点向虚拟场景中的光源方向构建第一光线,如果确定场景点落入半透明物体的阴影,则根据半透明物体的透光信息和光源的光源能量确定所述场景点对应的目标光照能量,按照该目标光照能量渲染场景点,达到了以较小的计算量模拟计算半透明物体的阴影效果,减少计算开销的目的,从而实现了提高在画面上渲染半透明物体的阴影效果时渲染效率的技术效果,进而解决了在画面上渲染半透明物体的阴影效果时渲染效率较低的技术问题。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图5所示的结构仅为示意,电子装置可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等电子设备。图5其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图5中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图5所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令电子设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行半透明物体阴影效果的渲染方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线;
根据所述第一光线与半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;
在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;
按照所述目标光照能量渲染所述场景点。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种半透明物体阴影效果的渲染方法,其特征在于,包括:
从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线,所述场景点位于半透明物体之外;
根据所述第一光线与所述半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;
在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;
按照所述目标光照能量渲染所述场景点。
2.根据权利要求1所述的方法,其特征在于,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量包括以下之一:
根据所述半透明物体的不透明度、所述第一光线与所述半透明物体的相交次数以及所述光源能量确定所述目标光照能量;
根据所述半透明物体对光的吸收率、所述第一光线在所述半透明物体中穿过的距离以及所述光源能量确定所述目标光照能量。
3.根据权利要求2所述的方法,其特征在于,根据所述半透明物体的不透明度、所述第一光线与所述半透明物体的相交次数以及所述光源能量确定所述目标光照能量包括:
将所述不透明度与所述相交次数的乘积值确定为能量衰减比例;
将1与所述能量衰减比例的差值确定为剩余能量比例;
将所述剩余能量比例与所述光源能量的乘积值确定为所述目标光照能量。
4.根据权利要求2所述的方法,其特征在于,根据所述半透明物体对光的吸收率、所述第一光线在所述半透明物体中穿过的距离以及所述光源能量确定所述目标光照能量包括:
将所述吸收率与所述距离相乘,得到目标参数值;
计算所述目标参数值的指数函数值;
将所述指数函数值与所述光源能量相乘,得到所述目标光照能量。
5.根据权利要求1所述的方法,其特征在于,根据所述半透明物体的透光信息和所述光源能量确定所述场景点对应的目标光照能量包括:
根据所述半透明物体的透光信息和所述光源能量确定中间光照能量;
计算所述第一光线与所述半透明物体的每个交点上所述第一光线与所述半透明物体表面法线的点乘,得到多个点乘值;
将所述中间光照能量与所述多个点乘值的乘积确定为所述目标光照能量。
6.根据权利要求1所述的方法,其特征在于,从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线包括:
沿着观察点到待渲染画面上的像素点的方向,构建射向所述虚拟场景中的第二光线;
确定所述第二光线与所述虚拟场景之间的交点为所述场景点;
从所述场景点向所述光源方向构建光线,得到所述第一光线。
7.根据权利要求6所述的方法,其特征在于,按照所述目标光照能量渲染所述场景点包括:
将所述像素点确定为所述场景点在所述待渲染画面上对应的位置;
使用所述目标光照能量在所述待渲染画面上渲染所述像素点,得到渲染画面。
8.一种半透明物体阴影效果的渲染装置,其特征在于,包括:
构建模块,用于从虚拟场景中的场景点向所述虚拟场景中的光源方向构建第一光线,所述场景点位于半透明物体之外;
第一确定模块,用于根据所述第一光线与所述半透明物体的相交情况确定所述场景点是否落入所述半透明物体的阴影中;
第二确定模块,用于在根据所述第一光线与半透明物体相交确定所述场景点落入所述半透明物体的阴影的情况下,根据所述半透明物体的透光信息和所述光源的光源能量确定所述场景点对应的目标光照能量;
渲染模块,用于按照所述目标光照能量渲染所述场景点。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7任一项中所述的半透明物体阴影效果的渲染方法。
10.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至7任一项中所述的半透明物体阴影效果的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210812470.2A CN114972606A (zh) | 2021-06-28 | 2021-06-28 | 一种半透明物体阴影效果的渲染方法及装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110719139.1A CN113313806B (zh) | 2021-06-28 | 2021-06-28 | 一种阴影效果的渲染方法、装置、存储介质和电子装置 |
CN202210812470.2A CN114972606A (zh) | 2021-06-28 | 2021-06-28 | 一种半透明物体阴影效果的渲染方法及装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110719139.1A Division CN113313806B (zh) | 2021-06-28 | 2021-06-28 | 一种阴影效果的渲染方法、装置、存储介质和电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114972606A true CN114972606A (zh) | 2022-08-30 |
Family
ID=77380609
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210812470.2A Pending CN114972606A (zh) | 2021-06-28 | 2021-06-28 | 一种半透明物体阴影效果的渲染方法及装置 |
CN202110719139.1A Active CN113313806B (zh) | 2021-06-28 | 2021-06-28 | 一种阴影效果的渲染方法、装置、存储介质和电子装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110719139.1A Active CN113313806B (zh) | 2021-06-28 | 2021-06-28 | 一种阴影效果的渲染方法、装置、存储介质和电子装置 |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN114972606A (zh) |
WO (1) | WO2023273115A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114972606A (zh) * | 2021-06-28 | 2022-08-30 | 完美世界(北京)软件科技发展有限公司 | 一种半透明物体阴影效果的渲染方法及装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101055645B (zh) * | 2007-05-09 | 2010-05-26 | 北京金山软件有限公司 | 一种阴影实现的方法及装置 |
US8159490B2 (en) * | 2007-10-16 | 2012-04-17 | Dreamworks Animation Llc | Shading of translucent objects |
EP2419885B1 (en) * | 2009-04-17 | 2021-04-28 | Maxon Computer, Inc. | Method for adding shadows to objects in computer graphics |
US9659404B2 (en) * | 2013-03-15 | 2017-05-23 | Disney Enterprises, Inc. | Normalized diffusion profile for subsurface scattering rendering |
CN104134230B (zh) * | 2014-01-22 | 2015-10-28 | 腾讯科技(深圳)有限公司 | 一种图像处理方法、装置及计算机设备 |
CN107067455B (zh) * | 2017-04-18 | 2019-11-19 | 腾讯科技(深圳)有限公司 | 一种实时渲染的方法及设备 |
CN112396684A (zh) * | 2020-11-13 | 2021-02-23 | 贝壳技术有限公司 | 光线追踪方法、装置及机器可读存储介质 |
CN112132945B (zh) * | 2020-11-24 | 2021-02-12 | 江苏普旭软件信息技术有限公司 | 一种高清云渲染方法 |
CN112700528B (zh) * | 2020-12-21 | 2022-08-12 | 南京理工大学 | 一种用于头戴增强现实设备的虚拟物体阴影渲染方法 |
CN112819940B (zh) * | 2021-01-29 | 2024-02-23 | 网易(杭州)网络有限公司 | 渲染方法、装置和电子设备 |
CN114972606A (zh) * | 2021-06-28 | 2022-08-30 | 完美世界(北京)软件科技发展有限公司 | 一种半透明物体阴影效果的渲染方法及装置 |
-
2021
- 2021-06-28 CN CN202210812470.2A patent/CN114972606A/zh active Pending
- 2021-06-28 CN CN202110719139.1A patent/CN113313806B/zh active Active
- 2021-11-23 WO PCT/CN2021/132539 patent/WO2023273115A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2023273115A1 (zh) | 2023-01-05 |
CN113313806B (zh) | 2022-08-19 |
CN113313806A (zh) | 2021-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112233217B (zh) | 一种虚拟场景的渲染方法和装置 | |
CN108304075A (zh) | 一种在增强现实设备进行人机交互的方法与设备 | |
CN112308051B (zh) | 文本框检测方法、装置、电子设备和计算机存储介质 | |
JP2022520264A (ja) | 画像輝度の調整方法及び装置、電子機器及びコンピュータプログラム | |
US11720792B2 (en) | Devices and methods for reinforcement learning visualization using immersive environments | |
CN113313806B (zh) | 一种阴影效果的渲染方法、装置、存储介质和电子装置 | |
CN115294268A (zh) | 一种物体的三维模型重建方法及电子设备 | |
CN115272556A (zh) | 反射光照确定、全局光照确定方法、装置、介质和设备 | |
CN115797565A (zh) | 三维重建模型训练方法、三维重建方法、装置及电子设备 | |
CN110782391A (zh) | 驾驶仿真场景中的图像处理方法、装置及存储介质 | |
Qureshi et al. | Fully integrated data communication framework by using visualization augmented reality for internet of things networks | |
CN110248165A (zh) | 标签显示方法、装置、设备及存储介质 | |
CN113313807B (zh) | 一种画面的渲染方法、装置、存储介质和电子装置 | |
CN113034658A (zh) | 一种模型贴图的生成方法和装置 | |
CN113470161B (zh) | 虚拟环境中容积云的光照确定方法、相关设备及存储介质 | |
CN112967369A (zh) | 一种光线展示方法和装置 | |
CN113872798A (zh) | 空间网络拓扑图的构建方法、装置、存储介质及电子设备 | |
CN113440845A (zh) | 一种虚拟模型的渲染方法、装置、存储介质和电子装置 | |
CN111768480B (zh) | 火焰动画生成方法及装置、计算机存储介质、电子设备 | |
CN111369665A (zh) | 一种基于三维建模技术的生产状态监测系统及监测方法 | |
CN103824310A (zh) | 一种生成光特效文字的方法及装置 | |
CN113778905B (zh) | Ui设计验收方法、装置、设备及存储介质 | |
US20220398107A1 (en) | Ranking finite regular expression formats using state machines | |
CN111026732B (zh) | 动态化巡采巡查方法和系统 | |
CN114185940A (zh) | 数据处理方法、装置、介质、电子设备及程序产品 |
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 |