X-Ray掃描動(dòng)效是影視中常見(jiàn)的特效,變形金剛電影中汽車人掃描汽車變身的鏡頭讓人印象深刻,科技感撲面而來(lái)。那么,這么炫的技能能不能應(yīng)用在智能汽車的HMI設(shè)計(jì)上?將開(kāi)機(jī)動(dòng)畫(huà)、汽車自檢等場(chǎng)景打造成X-Ray掃描動(dòng)效是一種什么感受?
當(dāng)!然!可!以! 一切交給KANZI
通過(guò)KANZI軟件實(shí)現(xiàn)X-Ray掃描動(dòng)效 接下來(lái)我們將逐步講述如何使用KANZI實(shí)現(xiàn)X-Ray掃描特效:
1. 在車模原有效果不變的情況下,實(shí)現(xiàn)X光移動(dòng)掃描車身的效果
在KANZI中,汽車模型一般使用特殊材質(zhì)例如光照模型材質(zhì)、PBR材質(zhì)來(lái)實(shí)現(xiàn)真實(shí)的汽車效果,因此要在原有的材質(zhì)效果上實(shí)現(xiàn)動(dòng)效,需要在原有的材質(zhì)Shader代碼上進(jìn)行功能擴(kuò)展。
本例中的車模使用的是KANZI自帶的Blinn-Phong著色模型;
在Fragment Shader中,對(duì)最后經(jīng)過(guò)光照計(jì)算輸出的color值進(jìn)行操作實(shí)現(xiàn)效果,最后通過(guò)gl_FragColor輸出。
在Vertex Shader中,定義vPos變量代表模型在世界坐標(biāo)系下的頂點(diǎn)坐標(biāo),輸出到Fragment Shader使用。
Fragment Shader中定義ScanLinePosX和ScanLineWidthX兩個(gè)float值;
將世界坐標(biāo)系下模型頂點(diǎn)坐標(biāo)的X與ScanLinePosX相減并取絕對(duì)值,獲取每個(gè)頂點(diǎn)到Scan Line PosX的距離dist,與Scan Line WidthX進(jìn)行判斷,在范圍內(nèi)對(duì)color值進(jìn)行再計(jì)算實(shí)現(xiàn)效果,范圍外則顯示原有車模顏色值,以此確定掃描區(qū)域的范圍;
通過(guò)Animation曲線動(dòng)態(tài)更改Scan Line PosX實(shí)現(xiàn)掃描區(qū)域的移動(dòng);
2. X光掃描車身,模型邊緣發(fā)光效果的實(shí)現(xiàn)
邊緣光即Rim Light,在當(dāng)前觀察視角下模型的邊緣加個(gè)光的效果,通過(guò)常見(jiàn)的光照模型檢測(cè)邊緣,模型頂點(diǎn)的法線向量(即垂直于頂點(diǎn)平面的向量)與攝像機(jī)和頂點(diǎn)間的視角向量之間的夾角越大,說(shuō)明越靠近邊緣。
定義uniform 參數(shù)Rim Light Color 作為邊緣光顏色輸入值,Rim Power Factor作為邊緣光強(qiáng)度因子,N為標(biāo)準(zhǔn)化后的頂點(diǎn)法線向量,V為標(biāo)準(zhǔn)化后的頂點(diǎn)與攝像機(jī)間方向向量,這兩個(gè)向量在原本的光照模型Shader中都已近計(jì)算好了,可以直接使用。
OpenGL內(nèi)置dot(N, V)函數(shù)表示返回兩個(gè)向量的點(diǎn)積,返回值越接近0表示夾角越大、越接近邊緣,Rim Power Factor參數(shù)傳入Open GL內(nèi)置pow ()指數(shù)函數(shù),控制邊緣光強(qiáng)度,最后獲得掃描區(qū)域rimColor顏色值。
3. X光掃描區(qū)域透視效果實(shí)現(xiàn)
定義uniform 參數(shù)XRay Percentage表示X-Ray透視強(qiáng)度,分別控制了Rim Light顏色與車模原本顏色混合強(qiáng)度,和掃描區(qū)域透視強(qiáng)度;
XRay Percentage越大區(qū)域顯示邊緣光越強(qiáng),反之則顯示車模原本顏色。 實(shí)現(xiàn)透視效果需要車模分出內(nèi)部與外殼兩個(gè)結(jié)構(gòu),設(shè)置車模外殼部分節(jié)點(diǎn)混合Blend Mode為阿爾法: 預(yù)乘(Alpha: Premultiplied),使車外殼模型可透明,內(nèi)部模型則不需要。
rimColor的alpha通道通過(guò)內(nèi)置函數(shù)smoothstep()返回0到1直接的值,并通過(guò)XRay Percentage參數(shù)控制;
最終實(shí)現(xiàn)X-Ray效果可控:
4. X光掃描區(qū)域網(wǎng)格效果及邊緣漸變的實(shí)現(xiàn)
定義Wire Texture傳入網(wǎng)格圖紋理,紋理Wrap Mode設(shè)置Repeat;
通過(guò)放到UV坐標(biāo)使紋理重復(fù)擴(kuò)展形成網(wǎng)格,定義Wire Tex Strength參數(shù)控制網(wǎng)格顯示強(qiáng)度,最后將網(wǎng)格紋理顏色值與rimColor混合疊加。
1)X-Ray掃描區(qū)域邊緣需要有漸變過(guò)度的效果,通過(guò)之前計(jì)算得到的模型頂點(diǎn)與Scan Line PosX之間的距離值dist,與區(qū)域的寬度值Scan Line WidthX相比,獲得0到1之間的值;
2)通過(guò)pow()返回它的1.5次方得到factor,表示當(dāng)前模型頂點(diǎn)到掃描區(qū)域中心的距離因子,掃描區(qū)域邊緣的距離越遠(yuǎn),factor值越小;
3)再通過(guò)mix()函數(shù)混合rim Color與車模原始色,越接近掃描區(qū)域邊緣越向車模原始色漸變;
最后使用Animation或狀態(tài)機(jī)控制Shader的自定義的參數(shù)實(shí)現(xiàn)X-Ray掃描的效果。
責(zé)任編輯:pj
-
掃描
+關(guān)注
關(guān)注
0文章
204瀏覽量
25139 -
開(kāi)機(jī)
+關(guān)注
關(guān)注
0文章
26瀏覽量
13357
發(fā)布評(píng)論請(qǐng)先 登錄
PCBA加工廠中X-RAY檢測(cè)技術(shù)應(yīng)用與重要性
X-Ray檢測(cè)助力BGA焊接質(zhì)量全面評(píng)估
從捷多邦案例看X-Ray檢測(cè)在BGA焊接評(píng)估中的作用
PCBA代工必看!X-Ray圖像5步快速鎖定透錫不良,告別隱性缺陷
多層PCB對(duì)準(zhǔn)精度的保障:捷多邦X-ray檢測(cè)技術(shù)解析
X-Ray檢測(cè)設(shè)備能檢測(cè)PCBA的哪些缺陷
X-RAY檢測(cè)設(shè)備用于檢測(cè)集成電路缺陷瑕疵

SMT加工質(zhì)量新保障:X-ray檢測(cè)設(shè)備的作用與重要性

X-RAY與SAT檢測(cè)原理:為什么X-RAY只能掃描空洞不能掃描分層

X-ray在芯片失效分析中的應(yīng)用

ADS131A04IPBSR在X-RAY發(fā)現(xiàn)引腳有差異,能否確認(rèn)是否產(chǎn)地上的區(qū)別?
X-Ray射線檢測(cè)設(shè)備淺析

這些因素影響X-RAY射線檢測(cè)設(shè)備的價(jià)格

TLV8544 X-RAY框架變動(dòng),是否是因?yàn)镈C差距導(dǎo)致的變動(dòng)呢?
IC芯片檢測(cè)新紀(jì)元:X-RAY設(shè)備的五大創(chuàng)新優(yōu)勢(shì)

評(píng)論