VRay灯光储存发光图的意义(1)

大家好,我是逆水。今天为大家讲解灯光储存发光图的意义。

我们在看一下网格灯,所谓的网格灯就是你可以指定一个三维物体以它的形状作为灯的形状,它这个使用通常是当你认为平面灯和球形灯,

这两个都不能满足你的要求的时候你就可以选择网格灯,这样它就可以选择一个网格物体也就是一个三维物体将这个三维物体变成灯的形状,

这样它所产生的照明效果,也就是光照表现和阴影就会以当前选择的三维物体形状的物体为准。当我们选择网格灯光的时候下面就有一个网格灯光选项,

我们可以点击拾取网格注意选择之前我们这个默认的是替换网格灯光,那也就是说这个灯就会直接移动到我们所指定的三维物体上同时这个三维物体也就变成了灯,如果你指定之后之前这个三维物体仍然还想要你可以选择把之前的三维物体输出出来我们点击一下拾取网格作为节点,

其实就是把原来的三维物体复制一个出来,我们点一下然后移动,

可以看到原来的三维物体也就是场景中的这个圆环被输出出来,这就是网格类灯光的特点有个这个选项你就可以随意指定你想要的灯的形状,那么它的缺点呢就是第一个对于运动模糊的效果支持的不太好,事实上VRay官方也是承认这一点并提醒用户说以后的版本将会改变。

也就是说如果是网格灯光的话你给它加入运动模糊,就比如说这个灯是动的那么运动模糊的效果表现的不是很好,在一个就是由于我们指定的三维物体都是一些比较特殊的形状所以它产生的照明容易出现杂点那么我们就要提高采样值的细分,

我们当前先看一下效果将它的亮度调一下比如为5,

然后做一下渲染看一下效果,

仔细观察一下我们的渲染结果,大家会发现无论是照明还是阴影运算都产生了杂点,这是因为细分值过低导致的,这个细分值默认是8所以出现了杂点,细分值事实上就决定着灯光照射的精度它的值越高光照表现就越好产生的阴影也越真实。

如果这个值过低的话它的光照就会产生一些杂点同时影子也会产生更多的杂点,通常阴影表现的更加强烈一些杂点会更多一些,我们使用的办法就是讲这个细分值提高比如提高到30,

然后再次进行渲染,

这个杂点呢基本上就已经消失了,光照表现效果也是非常的好我们把细分值为30产生的效果保存一下,

大家可以看到它运用的时间是1分26秒用的时间是很长的,原因在于灯光在计算灯光的阴影和光照效果的时候它的算法就比较类似于引擎里面的BF算法每个点进行采样,这里我只是说它是这个原理并不是说它是以个引擎。

也就是说为何用了这么长时间,也就是说灯光的算法中没有自适应细分它不想发光图这样的算法,我们知道发光图的算法它又个自适应细分的这么一个过程所以发光图渲染的效果比较好也比较快,然后中间的效果它通过这个插值采样来表现出来,

这是为什么发光图渲染的又快又好就是这个道理,我们之前也一直在强调但是灯光在运算的时候运算直接照明的时候就纯粹的通过提高细分值硬把它表现出来,这是为什么我们需要这么长的时间。

那么为什么我们要提下这个问题呢,因为在这里我要着重讲一下存储发光图。存储发光图有什么意义呢,

事实上这是以个很有用的选项,但是只有VR灯光又这个选项它的作用主要有两个。第一个作用就是把直接照明的效果存储到发光贴图引擎的光子贴图里面。

这样的话将来调用光子贴图的时候可以一盏灯不能有,因为我们知道GI指的是间接照明那么现在我们做一个简单是实例看一下,为了更快一点呢我们把这个细分值仍然调节为8,

我们先选择单帧渲染一下,

渲染完毕,大家要注意这个存储发光图我们并没有打开,那么现在渲染完毕之后我就可以把它的光子保存起来,比如我选择保存光子我们保存在“123”里面,

之后我们选择调用光子点击从文件调用,

我们在渲染一次,

你可以看到它直接开始渲染图像并不进行什么直接照明运算,这里它就不运算了因为它直接调用了光子。可是如果我们这盏灯删掉或者是把这盏灯关了就跟删掉是一个意思,我们把它关掉然后再次进行渲染我们看一下,

那么我们得到的就是这样一个效果,为何会出现这样一个效果呢这是因为发光图所存储的光子是间接照明,它把当前场景的间接照明的信息已经保存下来了所以在渲染的时候它不会计算间接照明直接调用所以出现这样一个效果。

直接照明是存储不下来的,千万切记这个地方就是间接照明所以当我们把这个灯关闭之后渲染就是这样的一个结果,把这个灯打开同时我们调用光子为什么这个渲染还是很慢呢,

我们可以看到用了32秒为什么这么慢呢,原因在于间接照明它不用运算了因为直接调用光子了,但是直接照明仍然需要VR灯光通过它的细分值进行运算,这种运算就类似于像BF算法那样所以很耗时。

那么接下来我们选择单帧,

在渲染一次,这次我们选择存储发光图,

这也就是说把这盏灯的直接照明效果也保存在发光图引擎的光子里,如果渲染完毕这个发光图的光子就不但包括了间接照明信息同时也包括了它的直接照明信息,我们在渲染一次看一下,

渲染完成我们依然点击保存把它的光子保存下来,这时候这个光子就保存了间接照明以及直接照明但是大家有没有发现一个奇怪的现象,就是当我们选择存储发光图的时候注意细分值仍然是8可是大家又没有发现场景中的杂点小时了,

这个就是所有我要讲解的,你先记住有这么回事就可以了所以我再要讲解是什么原因导致这个杂点消失的,因为原来我们细分值是8的时候是会出现很多杂点的。同时你会发现这个渲染只用了8秒多,

这也是我们随后要讲解的,我们先说现在这个光子的问题接下来我们选择从文件调入,

调入我们刚才存储的光子文件,同时这个灯我们在点击关闭,

再次进行渲染我们再来看一下它的速度以及效果,

首先你会看到即使这个灯关掉了渲染出来的效果仍然是之前的效果,是因为我们把它的直接照明信息也存储在了光子里面了,同时你会发现它的渲染时间只用了8.2秒,

之前我们调用的32秒,首先我们说明一下为什么渲染速度变快了这个32秒是我们调用间接照明光子用了32秒,这个是调用的光子中包括直接照明和间接照明都有只用了8.2秒原因就在于它之前光子离只有间接照明信息的时候直接照明需要依赖灯光进行一个运算。

而现在光子里直接照明信息和间接照明信息都有所以就不需要灯在进行运算了,很显然速度就会变快。那么以上我所说的就是存储发光图这个选项的第一个作用,简单来说就是把这个灯的直接照明信息也存储到发光图引擎的光子里面。

但是大家切记这个首次引擎必须是发光图,

否则是无效的,这就是存储发光的意义。所以有些时候我们在渲染一个场景时完全可以把灯全部删掉如果这个灯都是VR灯,那么我们在渲染光子时可以把他们的直接照明信息都渲染到里面。

那么今天呢,就给大家分享到这里,如果你觉得文章对你有帮助,希望将网站分享给你的朋友。感谢大家支持!

封面图

评论0

请先

本站模型、材质以及IES灯光均支持直接载入SketchUp,需要安装智达云插件使用点击下载插件

社交账号快速登录

微信扫一扫关注
如已关注,请回复“登录”二字获取验证码