之前在 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 同步的....好..完成拉..
沒有留言:
張貼留言