反射源(Reflection Source)
默認(rèn)的情況下,場(chǎng)景中的對(duì)象會(huì)使用Unity內(nèi)建的標(biāo)準(zhǔn)著色器(Standard Shader)來(lái)著色魂毁,標(biāo)準(zhǔn)著色器是一個(gè)基于物理的著色器(PBS)玻佩,它會(huì)透過(guò)模仿真實(shí)世界的物理特性像是反射或能量傳遞等來(lái)模擬真實(shí)世界里光在材質(zhì)上的表現(xiàn)。
當(dāng)使用標(biāo)準(zhǔn)著色器時(shí)席楚,每一個(gè)材質(zhì)都會(huì)具有一定程度的高光反射(specularity)或金屬反射(metalness)屬性咬崔,在沒(méi)有強(qiáng)大的硬件來(lái)處理實(shí)時(shí)光線追蹤反射的情況下,我們得依賴(lài)預(yù)先計(jì)算著色反射烦秩,我們使用了一個(gè)由六張描述天空的圖片所組成的立方體貼圖(Cubemap)或使用從定點(diǎn)搜集環(huán)境信息的反射探頭(Reflection Probe)產(chǎn)生的所需紋理垮斯,然后通過(guò)材質(zhì)的Shader與其他光和表面數(shù)據(jù)混合運(yùn)算來(lái)模擬我們真實(shí)世界看到的反射效果。
默認(rèn)情況下熊杨,Unity場(chǎng)景中的對(duì)象將會(huì)反射天空盒,然而盗舰,你可以在Lightning窗口中設(shè)置Reflection Source 屬性來(lái)全局地改變這種表現(xiàn)晶府,或者更改天空盒,或者使用一個(gè)自定義的Cubemap钻趋,這個(gè)Reflection Source可以被認(rèn)為是一個(gè)場(chǎng)景范圍的立方體貼圖川陆,它在一個(gè)場(chǎng)景中能夠被所有對(duì)象使用,除非被覆蓋------通過(guò)添加一個(gè)反射探頭Reflection Probe
反射探頭(Reflection Probes)
天空盒的信息不可能包含所有的場(chǎng)景對(duì)象蛮位,在許多情況下较沪,對(duì)象從天空搜集反射信息時(shí)可能會(huì)被遮擋,像是室內(nèi)對(duì)象或是在類(lèi)似橋或是隧道等建筑物里的對(duì)象土至,為了要準(zhǔn)確反射這些對(duì)象购对,我們必須用反射探頭針對(duì)這些對(duì)象取樣,這種探頭從他們的位置對(duì)周?chē)硬呀Y(jié)果寫(xiě)到立方體貼圖陶因,可以讓周?chē)?jīng)過(guò)的物體得到環(huán)境的反射影像骡苞。你可以透過(guò)GameObject->Light->Reflection Probe來(lái)新增一個(gè)反射探頭,反射探頭的位置會(huì)決定立方體貼圖取樣的內(nèi)容楷扬,以及反射所看起來(lái)的樣子解幽,一般來(lái)說(shuō),基于性能考慮反射探頭越少越好烘苹,請(qǐng)記住躲株,反射探頭并非用來(lái)讓物理得到精確結(jié)果,而是讓游戲世界有更好的反射镣衡,大多數(shù)情況下幾個(gè)安排妥當(dāng)?shù)姆瓷涮筋^就很足夠了霜定。
在反射探頭的屬性面板中我們可以設(shè)定Type為實(shí)時(shí)(Realtime),烘焙(Baked)或自定義(Custom)档悠,需要明白的是,實(shí)時(shí)反射的設(shè)定對(duì)性能極為不利望浩,每多一個(gè)實(shí)時(shí)反射探頭就會(huì)多出額外六次的著色運(yùn)算辖所,因此擺設(shè)實(shí)時(shí)的反射探頭應(yīng)該要有明確的需求,否則一般來(lái)說(shuō)建議設(shè)成烘焙的就夠了磨德,性能也會(huì)好很多缘回。
需要注意的是,只有標(biāo)記為”ReflectionProbe Static”的對(duì)象才會(huì)被反射探頭取樣典挑,從屬性接口上靜態(tài)對(duì)象(Static)的下拉選單打勾即可酥宴,相反的,實(shí)時(shí)的反射探頭會(huì)對(duì)所有可見(jiàn)的物體取樣您觉,除非你在屏蔽(Mask)選單指定剔除它拙寡。