CN102903131A - 在球面高斯光源下半透明物体的渲染方法 - Google Patents
在球面高斯光源下半透明物体的渲染方法 Download PDFInfo
- Publication number
- CN102903131A CN102903131A CN2012103315343A CN201210331534A CN102903131A CN 102903131 A CN102903131 A CN 102903131A CN 2012103315343 A CN2012103315343 A CN 2012103315343A CN 201210331534 A CN201210331534 A CN 201210331534A CN 102903131 A CN102903131 A CN 102903131A
- Authority
- CN
- China
- Prior art keywords
- light source
- lambda
- sphere
- centerdot
- light intensity
- 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.)
- Granted
Links
Images
Landscapes
- Eye Examination Apparatus (AREA)
- Image Generation (AREA)
Abstract
本发明属于图形渲染技术领域,公开了一种在球面高斯光源下半透明物体的渲染方法。该在球面高斯光源下半透明物体的渲染方法通过球面高斯光源来模拟环境光,并建立关于球面高斯光源半径和入射角度的拟合系数查找表来计算每个入射点经多次散射后对出射点的光强度贡献,从而得到所有入射点经多次散射后对出射点的光强度贡献,同时计算出入射点经单次散射后对出射点的光强度贡献,两者之和即为出射点的实际光强度。因为球面高斯函数能够模拟半径及强度可变的光源,所以球面高斯光源既可以表示小而亮的光源,也可以表示大而暗的光源,符合物理规律,能够很好的模拟环境光,使得对半透明物体的渲染具有很高的真实性。
Description
技术领域
本发明涉及图形渲染技术领域,特别是涉及一种在球面高斯光源下半透明物体的渲染方法。
背景技术
真实感图形的生成经常会涉及到需要准确地模拟半透明材质。事实上,从广义的角度上说,绝大多数材质,比如大理石,玉石,蜡,牛奶,水果以及人的皮肤等等,都具备半透明的特性,从而会显示出一种光滑和柔和的外表特征。为了模拟半透明的效果,一个常见的方法是,考虑入射光对任意一个出射点的贡献,我们称之为双向次表面反射函数(BSSRDF)。
在2001年,Jensen等人在论文“A practical model for subsurfacelight transport”中率先提出了一个有效的BSSRDF模型,他们假设半透明物体是均匀的,并把光线在半透明物体内部的散射次数分为一次和多次分别考虑。对于单次散射,他们认为光线可能在沿出射方向反方向上的每个点处发生一次散射,通过考虑所有的情况,得到出射点的光强度;对于多次散射,他们假设所考虑的半透明物体是一个半无限大的平面,在入射点正下方和正上方分别放置一个正值的点光源和一个负值的点光源,利用这两个光源计算对任意出射点的贡献。
在2007年,Donner等人在论文“Rendering translucent materialsusing photon diffusion”中,将之前提出的正光源和负光源不再看作一个点光源,而是看作在入射点分别竖直向下和竖直向上衰减分布的一系列光源。这一方法使得半透明物体的表面更加清晰,细节上的损失更少。
在2011年,d'Eon等人在论文“A quantized-diffusion model forrendering translucent materials”中,提出了一个新的模型,这个模型可以通过函数近似的方法,给出竖直向下和竖直向上衰减分布的一系列光源的解析表达式,从而大大加快了半透明物体的渲染速度。
现有技术中以点光源和呈衰减分布的一系列点光源来模拟环境光,从而渲染出半透明物体效果,但环境光并不是简单的点光源,以点光源渲染的半透明物体和环境光作用下的半透明物体还是有一定的差距。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是提供一种减小模拟光源渲染的半透明物体与环境光作用下的半透明物体之间差距的在球面高斯光源下的半透明物体的渲染方法。
(二)技术方案
为了解决上述技术问题,本发明提供一种在球面高斯光源下半透明物体的渲染方法包括:
S1:建立关于球面高斯光源半径和入射角度的拟合系数查找表;
S2:根据给定的球面高斯光源,得到每个入射点的光强度;
S3:对每个入射点-出射点对,在S1得到的拟合系数查找表中,根据给定球面高斯光源的半径和入射角度,得到相应的拟合系数,从而确定由入射点经多次散射后对出射点光强度贡献的计算公式;
S4:根据S2得到的入射点的光强度和S3得到的由入射点经多次散射后对出射点光强度贡献的计算公式,分别计算每个入射点经多次散射后对所有出射点的光强度贡献,并累加得到每个出射点的光强度A;
S5:从视点方向看去,对每个出射点,沿着视线方向的折射方向进行采样积分,计算出每个出射点的光强度B,其中,对每个采样点,使用在给定球面高斯光源下由入射点经单次散射后对出射点光强度贡献的公式;
S6:从视点方向看去,每个出射点的实际光强度为A+B。
如上所述的在球面高斯光源下半透明物体的渲染方法,优选的是,所述球面高斯光源用二维高斯函数表示,即:
其中,λ为球面高斯函数的半径;i1为球面高斯函数的中心;i是变量,表示球面上任意的方向;G(i;i1;λ)为i方向上的光强度。
如上所述的在球面高斯光源下半透明物体的渲染方法,优选的是,球面高斯光源由u个衰减函数来近似表示,则与球面高斯光源半径和入射角度无关的拟合系数查找表为:
与球面高斯光源半径和入射角度有关的拟合系数查找表为:
上述各式中:D为扩散常数;σ为有效衰减系数;d是半透明物体任意两点间的直线距离;ak、λk为拟合系数;;ij、λj分别是经折射后的球面高斯光源的中心和半径,i2为入射点到出射点的连线方向;pφm、pφm、pEm、qEm为拟合系数。
如上所述的在球面高斯光源下半透明物体的渲染方法,优选的是,步骤S3具体为:
入射点经多次散射后对出射点光强度的贡献公式为:
其中,
上述各式中:F是菲涅耳项,是入射光和出射光分别经过折射后剩余能量比例的乘积;Cφ、D、CE是常数;Q(s)是光源衰减分布函数,其中Q和σ′t为常数;r是入射点到出射点的距离;ij、λj分别是经折射后的入射球面高斯光源的中心和半径;i2是入射点到出射点的连线方向;n是入射点的法线方向。
(三)有益效果
本发明所提供的在球面高斯光源下半透明物体的渲染方法通过球面高斯光源来模拟环境光,并建立关于球面高斯光源半径和入射角度的拟合系数查找表来计算每个入射点经多次散射后对出射点的光强度贡献,从而得到所有入射点经多次散射后对出射点的光强度贡献,同时计算出入射点经单次散射后对出射点的光强度贡献,两者之和即为出射点的实际光强度。因为球面高斯函数能够模拟半径及强度可变的光源,所以球面高斯光源既可以表示小而亮的光源,也可以表示大而暗的光源,符合物理规律,能够很好的模拟环境光,使得对半透明物体的渲染具有很高的真实性。
附图说明
图1为本发明实施例中球面高斯光源下半透明物体的渲染方法的流程图;
图2为球面高斯光源与半透明物体位置关系图;
图3为本发明实施例中球面高斯光源下半透明物体的渲染方法的原理图;
图4a为本发明实施例中光源沿45°入射角射入平面半透明物体是以d’Eon论文中提出的方法渲染的效果图;
图4b为本发明实施例中光源沿45°入射角射入平面半透明物体是在球面高斯光源下半透明物体渲染的效果图;
图4c为本发明实施例中光源沿45°入射角射入平面半透明物体是通过模拟方法计算出的效果参考图;
图5a为本发明实施例中光源沿80°入射角射入平面半透明物体是以d’Eon论文中提出的方法渲染的效果图;
图5b为本发明实施例中光源沿80°入射角射入平面半透明物体是在球面高斯光源下半透明物体渲染的效果图;
图5c为本发明实施例中光源沿80°入射角射入平面半透明物体是通过模拟方法计算出的效果参考图;
其中,1:半透明物体;2:球面高斯光源;3:环境光;4:入射点;5:出射点。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1为本发明实施例中在球面高斯光源下半透明物体的渲染方法的流程图。因为球面高斯函数能够模拟半径及强度可变的光源,所以球面高斯光源既可以表示小而亮的光源,也可以表示大而暗的光源,能够很好的模拟环境光。
如图1所示,本发明实施例中在球面高斯光源下半透明物体的渲染方法包括:
S1:建立关于球面高斯光源半径和入射角度的拟合系数查找表;
如图2所示,本实施例中的球面高斯光源可以用二维球面高斯函数表示,即:其中,λ为球面高斯函数的半径;i1为球面高斯函数的中心。i是变量,表示球面上任意的方向;G(i;i1;λ)为i方向上的光强度。因为二维球面高斯函数表示的球面高斯光源的光强度G(i;i1;λ)与半径λ和入射角度i1有关,可以更好的模拟半透明物体1周围的环境光3。并优选以u个(本实施例中为4个,即可很好的近似球面高斯光源)衰减函数来近似表示球面高斯光源,以方便建立拟合系数查找表,其中,近似过程可以使用MATLAB软件的fminsearch函数完成。
结合图3所示,本实施例中建立的拟合系数查找表具体为:
与球面高斯光源半径和入射角度无关的拟合系数查找表为:
此式只是为了计算出拟合系数ak、λk,与球面高斯光源无关。
与球面高斯光源半径和入射角度有关的拟合系数查找表为:
上述各式中:D为扩散常数;σ为有效衰减系数;d是半透明物体任意两点间的直线距离;ak、λk为拟合系数;ij、λj分别是经折射后的球面高斯光源的中心和半径,i2为入射点到出射点的连线方向;pφm、pφm、pEm、qEm为拟合系数。
经折射后的球面高斯光源是指:任何光线进入物体都会发生折射,对于球面高斯光源的每一根光线,在物体表面一点都会发生折射而进入物体,所有经过折射的光线聚集在一起,相当于一个新的球面高斯光源,这个光源就是经折射后的球面高斯光源。
而经折射后的球面高斯光源的中心和半径都直接与入射之前的球面高斯光源相关,因此建立的拟合系数是根据入射之前的球面高斯光源的半径和入射角度确定的。
其中,建立的拟合系数查找表是为了能够计算每个入射点-出射点对中入射点经多次散射后对出射点光强度的贡献,球面高斯光源半径和入射角度对应一组拟合系数pφm、pφm、pEm、qEm。
S2:根据给定的球面高斯光源,得到每个入射点的光强度;
由于球面高斯光源是面光源,故此处的入射点4光强度应当分布在[0,1]之间,完全可见记为1,完全不可见记为0,可以使用任何一种软阴影的渲染方法获得,在此不再赘述。
S3:对每个入射点-出射点对,在S1得到的拟合系数查找表中,根据给定球面高斯光源的半径和入射角度,得到相应的拟合系数,从而确定由入射点经多次散射后对出射点光强度贡献的计算公式;
根据S1得到的拟合系数查找表,本实施例中入射点4经多次散射后到出射点5的光强度贡献公式可以为:
其中,
上述各式中:F是菲涅耳项,是入射光和出射光分别经过折射后剩余能量比例的乘积,与光源的入射角度有关;Cφ、D、CE是常数;Q(s)是光源衰减分布函数,其中Q和σ′t为常数;r是入射点到出射点的距离;ij、λj分别是经折射后的入射球面高斯光源的中心和半径;i2是入射角度;n是入射点的法线方向。
S4:根据S2得到的入射点的光强度和S3得到的由入射点经多次散射后对出射点光强度贡献的计算公式,分别计算每个入射点经多次散射后对所有出射点的光强度贡献,并累加得到每个出射点的光强度A;
S5:从视点方向看去,对每个出射点,沿着视线方向的折射方向进行采样积分,计算出每个出射点的光强度B,其中,对每个采样点,使用在给定球面高斯光源下由入射点到出射点经单次散射后光强度贡献的公式;
在该步骤中,对于每个采样点,使用任何一种处理单次散射的方法获取入射点的位置,使用光源中心方向获取平均衰减值E,使用任何一种软阴影方法获取平均可见性V,对每个采样点,结合图3所示,在球面高斯光源下由入射点4经单次散射后对出射点5光强度贡献的公式为
其中,i是折射后的入射方向;o是折射后的出射方向;p(i,o)表示由i方向散射到o方向的概率;ij、λj分别是经折射后的入射球面高斯光源的中心和半径;Ω表示上式的积分是在整个球面上进行的。
S6:从视点方向看去,每个出射点的实际光强度为A+B。
图4a、4b和4c是光源沿45度入射角射入平面半透明物体的效果图,图5a、5b和5c是光源沿80度入射角射入平面半透明物体的效果图。其中,图4a和图5a是以d’Eon论文中提出的方法得出的效果图,图4b和5b是以本发明提供的在球面高斯光源下半透明物体的渲染方法得出的效果图,图4c和5c是通过模拟方法计算出的效果参考图,由图可见,本发明提供的球面高斯光源下半透明物体的渲染方法算法在效果上非常接近模拟结果,具有很高的真实性。
由以上实施例可以看出,本发明所提供的在球面高斯光源下半透明物体的渲染方法通过球面高斯光源来模拟环境光,并建立关于球面高斯光源半径和入射角度的拟合系数查找表来计算每个入射点经多次散射后对出射点的光强度贡献,从而得到所有入射点经多次散射后对出射点的光强度贡献,同时计算出入射点经单次散射后对出射点的光强度贡献,两者之和即为出射点的实际光强度。因为球面高斯函数能够模拟半径及强度可变的光源,所以球面高斯光源既可以表示小而亮的光源,也可以表示大而暗的光源,符合物理规律,能够很好的模拟环境光,使得对半透明物体的渲染具有很高的真实性。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。
Claims (4)
1.一种在球面高斯光源下半透明物体的渲染方法,其特征在于,包括:
S1:建立关于球面高斯光源半径和入射角度的拟合系数查找表;
S2:根据给定的球面高斯光源,得到每个入射点的光强度;
S3:对每个入射点-出射点对,在S1得到的拟合系数查找表中,根据给定球面高斯光源的半径和入射角度,得到相应的拟合系数,从而确定由入射点经多次散射后对出射点光强度贡献的计算公式;
S4:根据S2得到的入射点的光强度和S3得到的由入射点经多次散射后对出射点光强度贡献的计算公式,分别计算每个入射点经多次散射后对所有出射点的光强度贡献,并累加得到每个出射点的光强度A;
S5:从视点方向看去,对每个出射点,沿着视线方向的折射方向进行采样积分,计算出每个出射点的光强度B,其中,对每个采样点,使用在给定球面高斯光源下由入射点经单次散射后对出射点光强度贡献的公式;
S6:从视点方向看去,每个出射点的实际光强度为A+B。
2.根据权利要求1所述的在球面高斯光源下半透明物体的渲染方法,其特征在于,所述球面高斯光源用二维高斯函数表示,即:
其中,λ为球面高斯函数的半径;i1为球面高斯函数的中心;i是变量,表示球面上任意的方向;G(i;i1;λ)为i方向上的光强度。
4.根据权利要求3所述的在球面高斯光源下半透明物体的渲染方法,其特征在于,步骤S3具体为:
入射点经多次散射后对出射点光强度的贡献公式为:
其中,
上述各式中:F是菲涅耳项,是入射光和出射光分别经过折射后剩余能量比例的乘积;Cφ、D、CE是常数;Q(s)是光源衰减分布函数,其中Q和σ′t为常数;r是入射点到出射点的距离;ij、λj分别是经折射后的入射球面高斯光源的中心和半径;i2是入射点到出射点的连线方向;n是入射点的法线方向。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210331534.3A CN102903131B (zh) | 2012-09-07 | 2012-09-07 | 在球面高斯光源下半透明物体的渲染方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210331534.3A CN102903131B (zh) | 2012-09-07 | 2012-09-07 | 在球面高斯光源下半透明物体的渲染方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102903131A true CN102903131A (zh) | 2013-01-30 |
CN102903131B CN102903131B (zh) | 2015-04-15 |
Family
ID=47575344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210331534.3A Active CN102903131B (zh) | 2012-09-07 | 2012-09-07 | 在球面高斯光源下半透明物体的渲染方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102903131B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103489215B (zh) * | 2013-09-23 | 2016-01-20 | 清华大学 | 场景内全频率互反射光照效果的绘制方法 |
CN106846447A (zh) * | 2017-01-25 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 渲染次表面散射效果的方法和装置 |
CN106846450A (zh) * | 2017-02-10 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 实时渲染次表面散射的方法及相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090219287A1 (en) * | 2008-02-29 | 2009-09-03 | Microsoft Corporation | Modeling and rendering of heterogeneous translucent materials using the diffusion equation |
CN102163337A (zh) * | 2010-02-18 | 2011-08-24 | 辉达公司 | 用于使用至少一个半透明表面渲染像素的系统和方法 |
CN102360512A (zh) * | 2011-09-26 | 2012-02-22 | 清华大学 | 全局光照下全动态毛发的绘制方法 |
CN102646284A (zh) * | 2012-04-11 | 2012-08-22 | Tcl集团股份有限公司 | 一种3d渲染系统中透明物体的渲染顺序获取方法及系统 |
-
2012
- 2012-09-07 CN CN201210331534.3A patent/CN102903131B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090219287A1 (en) * | 2008-02-29 | 2009-09-03 | Microsoft Corporation | Modeling and rendering of heterogeneous translucent materials using the diffusion equation |
CN102163337A (zh) * | 2010-02-18 | 2011-08-24 | 辉达公司 | 用于使用至少一个半透明表面渲染像素的系统和方法 |
CN102360512A (zh) * | 2011-09-26 | 2012-02-22 | 清华大学 | 全局光照下全动态毛发的绘制方法 |
CN102646284A (zh) * | 2012-04-11 | 2012-08-22 | Tcl集团股份有限公司 | 一种3d渲染系统中透明物体的渲染顺序获取方法及系统 |
Non-Patent Citations (1)
Title |
---|
徐昆: "环境光照下的毛发渲染与外观编辑", 《计算机辅助设计与图形学学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103489215B (zh) * | 2013-09-23 | 2016-01-20 | 清华大学 | 场景内全频率互反射光照效果的绘制方法 |
CN106846447A (zh) * | 2017-01-25 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 渲染次表面散射效果的方法和装置 |
CN106846447B (zh) * | 2017-01-25 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 渲染次表面散射效果的方法和装置 |
CN106846450A (zh) * | 2017-02-10 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 实时渲染次表面散射的方法及相关装置 |
CN106846450B (zh) * | 2017-02-10 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 实时渲染次表面散射的方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102903131B (zh) | 2015-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100594519C (zh) | 用球面全景摄像机实时生成增强现实环境光照模型的方法 | |
CN109272455A (zh) | 基于弱监督生成对抗网络的图像去雾方法 | |
CN102819860B (zh) | 基于辐射度算法的次表面散射物体的实时全局光照方法 | |
CN107016719B (zh) | 一种屏幕空间的次表面散射效果实时绘制方法 | |
CN108932534A (zh) | 一种基于深度卷积生成对抗网络的图片生成方法 | |
EP2629266B1 (en) | Ishair: Importance sampling for hair scattering | |
CN104599326B (zh) | 一种人体心脏的实时逼真绘制方法 | |
CN102903131B (zh) | 在球面高斯光源下半透明物体的渲染方法 | |
CN104732490A (zh) | 基于cuda的快速双边滤波方法 | |
CN104112034A (zh) | 用于实施路径空间滤波的系统、方法和计算机程序产品 | |
CN102314704B (zh) | 一种基于brdf的次表面散射的实时绘制方法 | |
CN104167011A (zh) | 一种基于方向光辐射度的微结构表面全局光照绘制方法 | |
CN105488844A (zh) | 一种三维场景中海量模型实时阴影的显示方法 | |
CN103679818B (zh) | 一种基于虚拟面光源的实时场景绘制方法 | |
CN104392489A (zh) | 顾及拓扑的三维地理空间实体群的线消隐方法 | |
CN104463968B (zh) | 基于电网gis三维平台的遥感影像双目立体视觉匹配及三维重建方法 | |
CN103617593B (zh) | 三维流体物理动画引擎的实现方法及装置 | |
Mora et al. | Pattern Recognition: 12th Mexican Conference, MCPR 2020, Morelia, Mexico, June 24–27, 2020, Proceedings | |
CN103035027B (zh) | 一种用于固定光源的光照渲染方法 | |
CN103971397B (zh) | 基于虚拟点光源和稀疏矩阵还原的全局光照绘制方法 | |
CN103886636B (zh) | 基于光线投射步进补偿的实时烟雾渲染算法 | |
CN108074275A (zh) | 基于光线跟踪算法的高帧频可见光图像模拟方法及系统 | |
Pont et al. | Cast shadows in wide perspective | |
Budak et al. | A physical model of the firmament to calculate daylight | |
Shi et al. | Skeleton modulated topological perception map for rapid viewpoint selection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |