薛山
上期我們復刻了《終結(jié)者2》里T-1000的液態(tài)金屬機器人效果,這種經(jīng)典的視覺特效在當前的Blender里實現(xiàn)起來其實并不算難,既是大家練習技巧的好素材,也是發(fā)朋友圈微博抖音的好思路。而本期我們將繼續(xù)這種經(jīng)典特效復刻教學——超人的鐳射眼效果,簡單來說就是制作一個可以隨意轉(zhuǎn)動的鐳射光線,而且這個鐳射光線會和環(huán)境中的遮擋物進行自然的遮擋交互,話不多說,直接開始教學吧!
既然是要與環(huán)境交互,那么首先我們要做的當然就是搭建環(huán)境了,為了教學方便,我們就簡單搭建了一個如圖1的場景,場景中有地面和墻壁來限制鐳射光線的范圍,也有猴頭和圓環(huán)來實現(xiàn)鐳射光線的遮擋交互,注意在環(huán)境搭建完成后我們需要把所有環(huán)境物體都放入到一個新的集合里,這在我們后續(xù)的幾何節(jié)點中會有妙用。
當然,最佳的方案是結(jié)合現(xiàn)實拍攝的場景來進行交互,這就需要針對現(xiàn)實環(huán)境來進行建模并進行攝像機跟蹤,這個方案相對難度要更大一些,但效果會更好,有能力的讀者朋友們可以自行嘗試,本文還是以簡單的方案為例,畢竟它們的背后原理是相通的。
接下來我們新建一個柱體作為發(fā)光源,可以把它想象成手電筒,應用旋轉(zhuǎn)和縮放后進入它的幾何節(jié)點編輯器,這時候我們要新建一個曲線直線,并讓它與組輸入進行合并,這時候我們的“手電筒”就有了一條與之匹配的“光線”,然后我們要做的就是讓它們可以自由旋轉(zhuǎn)起來,這時候需要在后面接一個“變換”,這時候調(diào)整旋轉(zhuǎn)值,就能看到它們開始旋轉(zhuǎn)了。
不過問題來了,如果直接使用旋轉(zhuǎn)值,我們將無法得到物體的矢量位置信息,而本次教程恰恰需要矢量信息,因此我們不能直接使用旋轉(zhuǎn)值來調(diào)整物體旋轉(zhuǎn),而需要如圖2所示的那樣,通過“矢量”和“對齊歐拉到矢量”來對旋轉(zhuǎn)值進行控制。
完成這一步之后,大家再觀察圖2可以看到,鐳射光線直接穿過了猴頭,并沒有像我們需要的那樣被猴頭擋住,所以,下一個需要解決的問題就是如何讓鐳射光線不穿過物體,邏輯上其實也比較簡單,讓光線的末端“吸附”在物體上就行了,這時候就需要用到“光線投射”功能。
我們需要先引入環(huán)境模型的集合,然后通過“實現(xiàn)實例”來連接“光線投射”的“目標幾何體”,并以我們之前設(shè)置的“矢量”作為“光線方向”,這就能讓咱們的環(huán)境模型成為光線“吸附”的目標了。然后再使用“設(shè)置位置”來重新設(shè)置鐳射光線的位置,記得一定要加入“端點選擇”作為選中項,不然整支“手電筒”都會被投射到環(huán)境模型上去。如圖3所示,完成后我們就能獲得一個不會穿透環(huán)境物體的光線了。
但這時候鐳射光線還只是一條渲染時不可見的線段,要讓其呈現(xiàn)出應有的形態(tài)就需要使用“曲線轉(zhuǎn)網(wǎng)格”來讓它現(xiàn)形,這時候因為咱們的模型里原本就有網(wǎng)格物體,也就是“手電筒”,因此我們需要回到最前面的“變換”,將它與最后的輸出進行合并,這時候我們就能得到一個完整的鐳射光線輸出形態(tài)了。
到這一步還沒完,我們?nèi)孕枰獮殍D射光線賦予材質(zhì),不然光線看上去就是一條白線,這時候建議新建一個物體,比如平面,然后為它加載一個“自發(fā)光”材質(zhì),大家可以通過“層權(quán)重”等方法來讓光線效果看上去更自然。完成后回到幾何節(jié)點編輯器,在最后添加“設(shè)置材質(zhì)”并選中我們剛做的發(fā)光材質(zhì),完成后我們就能獲得如圖4的最終效果了。
本文所使用幾何節(jié)點編輯器一覽
其實仔細看不難發(fā)現(xiàn),本次教程的核心就是光線投射功能,這個功能可以為物體通過新的目標坐標,不僅可以命中位置,還可以判斷是否命中、命中法相和命中屬性,甚至還能輸出屬性,功能非常強大,由其衍生的玩法也非常多,是很值得大家嘗試的。而回到鐳射光線效果來看,實現(xiàn)過程只要理清了邏輯關(guān)系就并不復雜,也建議大家多玩多嘗試,這樣才能學到更多的Blender技能。EE8860DC-0425-45B1-9691-E6BB17314D7E