XSI 場景中有折反射物件時要如何算AO

之前在 MAX 使用 AO 的時候..單獨存一個檔.然後將所有的物件材質換成 AO 的材質再算一次..

這樣會有一個問題.好了像我之見在作室內的時候.就會有很多的反射跟折射..這時候就會有差別..

折反射出來的物件就會沒有 AO 材質..

在 MAX 目前好像是有一個外掛式可以解決這問題..就是在算 AO 的時候可以留下.物件的折反射..

另一個就是用 AO light ....不過目前是沒有辦法拆層.下去算對於後製.也較為不便...


好了..那 XSI 要怎模做勒...我們用的方法是第一種..將所有材質的其他屬性取代成 AO 的材質.

只留下原本材質的折射和反射的屬性...


第一.先建立一個新的 pass 就將它取名為 AO pass 吧..


圖中可以看到.有3個物件在 AO pass 會被計算到.在 sphere 中我有下了一個...displacement 的材質和半透明折射..


第二.再選取 Background_Objects_Partition 後 加入 Override ..按鈕是在.render > Get > Property > Override

這樣就會出現她的面板...


第三.將要修改的材質屬性加入到 Override 中..按下面板中的 Add Parameters...然後照圖中選取到材質中的 ambient . diffuse . specular ..然後再介面外點一下滑鼠...將這些材質屬性.加入到要替代的..材質中...就會在介面中加入這些.屬性項目..


第四.開啟 Render Tree 會看到 Override 中會有3個可以連接的點..這時候就可以加入

XSIAmbientOcclusion 調一下參數.就可以獲的就算是透過物件折射後也會有 AO 的結果...




現在來看一下材質球..會發現..在原本的材質中.他會再加入一個同名稱 +1 的材質球.取代物件的材質.並且是鎖起來的.

等於是不能調整裡面所有的參數....那要修改材質該怎模辦勒..就回到.Default_Pass 去修改物件的材質..這樣就算回到 AO-Pass 也是會跟 Default_Pass 同步的....好..完成拉..

沒有留言:

##EasyReadMore##