[转帖]巴西全面教程之美丽的反射焦散
先前我已写过了关于巴西的两个重要教程 <BR>一个GI <A href="http://bbs.graphicvale.com/dispbbs.asp?boardID=26&ID=13994" target="_blank" ><FONT color=#000000>http://bbs.graphicvale.com/dispbbs.asp?boardID=26&ID=13994</FONT></A><BR>一个次表面散射<A href="http://bbs.graphicvale.com/dispbbs.asp?boardID=26&ID=13989" target="_blank" ><FONT color=#000000>http://bbs.graphicvale.com/dispbbs.asp?boardID=26&ID=13989</FONT></A> <BR>接下来我们来了解一下巴西渲染器另一个特色 <BR>焦散 <BR>焦散一般分为三种: <BR>1.反射焦散(光子在光滑物体表面由于未被吸收而产生反弹,并在对立面产生光斑的现象) <BR>2.折射焦散(光子在透明物体内通过折射聚焦在对立面产生光斑的现象) <BR>3.体积焦散(光子在空气中由于粒子聚合而产生的空间光束聚集现象) <BR>无论哪一咱焦散, <BR>它们共同的特点在于: <BR>1.光子数一般较少,因为绝大多数光子在物体表面会被吸收产生漫射 <BR>2.光子都不同程度发生聚合现象 <BR>在巴西渲染器中只提供了实现前两种焦散的方法 <BR>在FinalRender中才支持全部三种焦散 <BR>至于如何用巴西渲染器实现第三种焦散我们暂不讨论 <BR>其实体积焦散可以用体积物质加巴西的次表面散射来实现 <BR>我们先来看看焦散的第一种类型反射焦散在巴西渲染器中是如何实现的:)先看原理!及我实同焦散的一些特殊布灯法
data/attachment/forum/2004-3/200432292132207.jpg<br><BR>接下来我们具体将这一设想实现! <BR>第一步!<BR>data/attachment/forum/2004-3/200432292238666.jpg<br><BR>第二步
data/attachment/forum/2004-3/200432292326620.jpg<br><BR>第三步 <BR>基本建立如下场景<BR>data/attachment/forum/2004-3/200432292422905.jpg<br><BR>接下来让我们设置灯光 <BR>开先讲过 <BR>我们只希望灯光产生用于反射焦散的光子 <BR>而不打算让它来照明 <BR>所以要设置灯光排除 <BR>让灯光不照射圆环和地面 <BR>照不照射自发光球体无所谓 <BR>灯光设置<BR>data/attachment/forum/2004-3/200432292540940.jpg<br><BR>这时可能你会问 <BR>既然巴西灯光都不参与照明圆环和场景了 <BR>又怎么可能产生反射焦散的光子呢? <BR>现在我来回答你 <BR>巴西的反射焦散是不管排除的 <BR>任何灯光只要开启了焦散开关既对场景中接受和产生焦散的物体 <BR>产生光子投射效应 <BR>只是不产生照明效果而已 <BR>可以看成光子计算和照明模型是分开的
那么 <BR>灯光已设置好了 <BR>我们开始进行材质的指定 <BR>这个非常简单 <BR>先来看看金属环材质
data/attachment/forum/2004-3/200432292711317.jpg<br><BR> 金属环用的是巴西的高级材质 <BR>用的绿色 <BR>加入了较高量度适中的高光 <BR>最关键的是加入了反射(reflect那里为灰度控制反射强度,我给了一个略灰的色) <BR>因为如果没有反射又谈何反射焦散呢? <BR>这点千万要注意!! 再来设置一下唯一照亮场景的光源 <BR>那个发光球体<BR>
data/attachment/forum/2004-3/20043229290487.jpg<br><BR>这个材质无须设置什么 <BR>只要打开Self-illumination自发光选项开关 <BR>并给定一个白色的自发光颜色就OK <BR>了 <BR>高光等设置都是多余的
地板的话无所谓 <BR>这里我用的是暗蓝色 <BR>容易突出光斑 <BR>这个随大家喜好
到此为止场景就全部设置完成了 <BR>但还不能开始渲染 <BR>因为我们还没有设置巴西渲染器的渲染参数 <BR>打开Render渲染面板(F10) <BR>在Current Render中指定巴西渲染器为产品级渲染器 <BR>接下来设置总的图像采样 <BR>关于图像采样如有不明白的请参照我写的GI教程<BR>
data/attachment/forum/2004-3/2004322930565.jpg<br><BR>接下来我们要到光子参数面板中打开全局的光子焦散开关 <BR>并设置相关参数 <BR>只有这样才能得到焦散效果<BR>data/attachment/forum/2004-3/200432293059627.jpg<br><BR>这里具体讲一下以上参数: <BR>首先你要勾选Active开关以打开全局的焦散,这样你在灯光中的设置才有意义 <BR>然后你主要要选择一个光子分析器Estimator,巴西提供了三种:basic基本的\Advanced高级的\Analysis分析用 <BR>我们一般选择Advanced 高级分析来产生最终效果 <BR>特殊一点的Analysis是用于观测光子分布及范围等情况的,对最终渲染只具备指导作用, <BR>不过我想大多数人看不明白的,凭直觉就行了 <BR>最重要的两个参数是: <BR>1.Photons in Estimate单位面积内参于分析的光子数: <BR>这个参数决定光子的聚集特性, <BR>即单位面积内有多少个光子将参于聚集运算 <BR>这个值越大则光子与光子之间将产生柔和的容合 <BR>而不是相互独立的一个个光点 <BR>当这个值超过了单位面积内的最大光子数时 <BR>将产生多余地计算 <BR>所以适当决定这个值对计算速度是有帮助的
2.Max Search Radius光子间最大相对分析半径 <BR>这个值将决定两个特性 <BR>首先它直接决定了光子本身的粒子大小表现 <BR>其实这是表面的,以后我会具体讲到 <BR>其次它与上头的那个参数一同决定了光子的聚集特性 <BR>过程是这样的 <BR>巴西首先根据Photons in Estimate决定单位面积内有多少 <BR>光子将要被聚集, <BR>但聚集程度则由Max Search Radius来提供依据 <BR>两个光子越近则越被容合反之要相对分离一些 <BR>产生层次感,所以Max Search Radius起到了分辨光子 <BR>与光子间的容合距离的作用 <BR>从而客观上体现出对光子本身大小的改变,因为假如两个 <BR>很近的光子容在一起你会觉得是一个很大的更亮的光子 <BR>而事实上光子的能量和大小是平均的,并且早就由灯光能量 <BR>和全局能量倍增器来控制了。
那么太多的道理总要规结于一种应用 <BR>我们可以这样理解: <BR>当你希望光子之间相互容合的厉害一点 <BR>即不是那样斑斑点点的效果时 <BR>你可能要增大Photons in Estimate值 <BR>也适量增大Max Search Radius值 <BR>反之则减小它们
另外的一个值得注意的地方是光子面板中关于光子文件 <BR>即Photon map file的设置 <BR>这是巴西很实用的功能 <BR>当然其它的一些渲染器都具备 <BR>save是将当前渲染的光子信息保存为光子贴图以便下次使用 <BR>load则为调出上次保存好的光子贴图文件来渲染光子 <BR>这个功能十分有用 <BR>因为光子信息与视图大小是无关的 <BR>即你可以在320X240的小图里渲染完光子存成文件 <BR>再在1024x768的大图中调出小图的光子文件 <BR>这样可以大大结省渲染时间!
好了 <BR>讲到这里我们已经完成了反射焦散的全部设置工作 <BR>现在渲染已经可以看到反射焦散的效果了 <BR>但你可能会问 <BR>我没打开GI(全局照明)啊 <BR>这里我强调一点 <BR>反射焦散与GI打开与否无关! <BR>在巴西中GI的运算和焦散的运算是独立的 <BR>与光照模型也是独立的
让我们来看下效果吧 <BR>以下是400万光子 <BR>无GI <BR>的情况<BR>
data/attachment/forum/2004-3/200432293316634.jpg<br><BR>如果要得到真正完美的焦散 <BR>提高光子数是最直接有效的 <BR>方法! <BR>我们来看下1亿个光子数的效果!<BR>data/attachment/forum/2004-3/20043229348176.jpg<br><BR>由于光子数的大幅增加 <BR>光子聚集成了一线 <BR>这就是我们要的! <BR>当然前期的光子计算也花了很多时间!
以上的场景是未排除物体的 <BR>因为没开GI <BR>现在按原来的方案将面光源排除物体 <BR>只用自发光球体来照明 <BR>这时GI <BR>必须打开了 <BR>因为只有GI <BR>才能反应物体光源 <BR>及自发光作为一种光源
400万光子 <BR>加GI<BR>
data/attachment/forum/2004-3/20043229356479.jpg<br><BR>6000万光子 <BR>加GI<BR>data/attachment/forum/2004-3/200432293617199.jpg<br><BR>注意看打了GI的图 <BR>亮的光斑是由面光源产生的 <BR>背面还有一圈淡的光斑 <BR>这是由自发光体产生的:)
可以看到 <BR>光子数太低的话要使它们聚集起来是很困难的 <BR>因为你让它们聚集的同时光子本身会产生剧烈容合 <BR>就不容易产生高亮细腻的光斑线 <BR>所以光子数是焦散效果中的关键参数!
最后我总结一下我个人的反射焦散打灯及调参数的方法!: <BR>首先建立基本场景 <BR>建立用于照明的灯光结构 <BR>再建立用于发射光子的灯光结构 <BR>这样做的好处是增加计算速度并且分开管理! <BR>实现方法就是将只发射光子的灯光不照亮场景中任何物体! <BR>完成后 <BR>调参数的顺序也有技巧! <BR>先确定一个光子数级别 <BR>是300万光子?800万? 1000万?4000万? 1亿? <BR>确定好这个以后在光子文件中选择保存光子文件 <BR>max photon search radiu 和 Photons in Estimate这两个参数是后期参数 <BR>及不参与初期光子贴图运算而是在后期渲染时做调整用的 <BR>所以开始你不必在意它们 <BR>先将你的光子数量级定好 <BR>计算出光子文件后 <BR>接下来的工作是以后每一次渲染就调出老的文件 <BR>快很多! <BR>并且再来调节那两个另人头疼的后期参数 <BR>这样省时高效! <BR>但是注意 <BR>光子贴图文件的复用有前提 <BR>即灯光角度及其参数不变 <BR>视图角度不变 <BR>最好是都不变:)
好了<BR>这个教程就到这了
本人不懂巴西渲染~~~我想发上来让大家看看~~ 图片看不到 <P>好 漂亮</P> 好贴.顶
页:
[1]