五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Unity-表面著色器中的自定義光照模型

2021-04-07 12:24 作者:unity_某某師_高錦錦  | 我要投稿

編寫表面著色器時,您將描述表面的屬性(比如反照率顏色和法線),而由__光照模型__計(jì)算光照交互。

有兩個內(nèi)置光照模型,分別是?Lambert?和?BlinnPhong,前者用于漫射光照,后者用于鏡面反射光照。Unity 中的?Lighting.cginc?文件用于定義這些模型(Windows:<unity 安裝路徑>/Data/CGIncludes/Lighting.cginc_;macOS:/Applications/Unity/Unity.app/Contents/CGIncludes/Lighting.cginc_)。

有些時候,您可能希望使用自定義光照模型。為此,可使用表面著色器。光照模型實(shí)際上就是若干符合某些慣例的 Cg/HLSL 函數(shù)。

聲明光照模型

一個光照模型中包含多個名稱以?Lighting?開頭的常規(guī)函數(shù)。您可以在著色器文件中的任何位置聲明這些函數(shù),也可以在其中一個包含的文件中聲明。這些函數(shù)是:

1.half4 Lighting<Name> (SurfaceOutput s, UnityGI gi);?在_不依賴于_視圖方向的光照模型的前向渲染路徑中使用此函數(shù)。

1.half4 Lighting<Name> (SurfaceOutput s, half3 viewDir, UnityGI gi);?在_依賴于_視圖方向的光照模型的前向渲染路徑中使用此函數(shù)。

1.half4 Lighting<Name>_Deferred (SurfaceOutput s, UnityGI gi, out half4 outDiffuseOcclusion, out half4 outSpecSmoothness, out half4 outNormal);?在延遲光照路徑中使用此函數(shù)。

1.half4 Lighting<Name>_PrePass (SurfaceOutput s, half4 light);?在光照預(yù)通道(舊版延遲)光照路徑中使用此函數(shù)。

請注意,您無需聲明所有函數(shù)。光照模型不一定會使用視圖方向。同樣,如果僅在前向渲染中使用光照模型,請勿聲明?_Deferred?和?_Prepass?函數(shù)。這確保了使用視圖方向的著色器僅編譯到前向渲染。

自定義 GI

聲明以下函數(shù)可自定義光照貼圖數(shù)據(jù)和探針的解碼:

1.half4 Lighting<Name>_GI (SurfaceOutput s, UnityGIInput data, inout UnityGI gi);

請注意,要對 Unity 標(biāo)準(zhǔn)光照貼圖和 SH 探針進(jìn)行解碼,您可以使用內(nèi)置函數(shù)?DecodeLightmap?和?ShadeSHPerPixel;這些函數(shù)位于 Unity 內(nèi)部?UnityGlobalIllumination.cginc?文件中的?UnityGI_Base?內(nèi)(Windows:<unity 安裝路徑>/Data/CGIncludes/UnityGlobalIllumination.cginc_;macOS:/Applications/Unity/Unity.app/Contents/CGIncludes/UnityGlobalIllumination.cginc__)。

示例

請參閱有關(guān)表面著色器光照示例的文檔以了解更多信息。


Unity-表面著色器中的自定義光照模型的評論 (共 條)

分享到微博請遵守國家法律
关岭| 布尔津县| 玛沁县| 安宁市| 行唐县| 广平县| 丘北县| 宁夏| 四平市| 白河县| 萨嘎县| 区。| 安庆市| 内丘县| 临夏市| 张家口市| 沙雅县| 太仆寺旗| 吴堡县| 黄浦区| 宁夏| 海晏县| 高唐县| 遵义市| 浪卡子县| 连平县| 祥云县| 沂南县| 大兴区| 阳东县| 克什克腾旗| 澄城县| 镇远县| 辽源市| 太仓市| 剑河县| 辉南县| 肇东市| 西乡县| 策勒县| 和平县|