創作內容

17 GP

【筆記】Shaderlab - 1. Incloud Cginc

作者:樂小呈│2020-12-05 17:01:11│巴幣:34│人氣:269
Shaderlab
自訂和引用函式文件

建立函式庫腳本 cginc
建立一個文字文件 myCgIncloud.txt,並將副檔名改成 .cginc

.cginc
{
    定義文件,使用if判斷定義狀態,注意是 ifndef 不是 ifdef
    #ifndef myCgIncloud
    #define myCgIncloud
    
    編寫函式
    fixed4 cgFunction(fixed4 c)
    {
        return  1 - c;
    }

    結束判斷
    #endif
}


引用文件函式
.shader
{

    CGPROGRAM
    如果引用文件和Shader腳本在同一個資料夾[分支]上,就只需要 "myCgIncloud.cginc",如果
    在不同分支的話,則是從分支開始 "path.../myCgIncloud.cginc" (需要斜線 / )
    #include "myCgIncloud.cginc"

    fixed4 frag (v2f i) : SV_Target
    {
        fixed4 col = tex2D(_MainTex, i.uv);

        調用函式
        return cgFunction(col);
    }
}

註 : Unity 2020 版本似乎更改引用文件的路徑寫法了,若在不同資料夾中便從 Assets 開始寫下完整路徑 (這樣好多了==)

參考資料

---
注意到我沒寫過引用文件的筆記,寫一下
然後 post processing shader 那篇有寫錯東西,早上更新了


引用網址:https://home.gamer.com.tw/TrackBack.php?sn=5002838
All rights reserved. 版權所有,保留一切權利

相關創作

留言共 3 篇留言

御安鴨·摸頭害鴨哭
函式庫...看了就怕

12-05 17:29

樂小呈
ㄅ怕ㄅ怕12-05 17:35
矮鵝
這樣是不是和c#的繼承很像阿? 代碼不用重復~~

12-05 19:32

樂小呈
也不是繼承,繼承的話會有class本身的性質12-05 19:35
樂小呈
引用的話就只是允許調用事先準備好的函式做計算12-05 19:36
⊰⊱求出處學術用⊰⊱
謝大佬教學

12-06 15:20

樂小呈
ㄅ客氣12-06 15:58
我要留言提醒:您尚未登入,請先登入再留言

17喜歡★angus945 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:【專案】ACG Baha... 後一篇:【閒聊】好希望有個人能夠...

追蹤私訊切換新版閱覽

作品資料夾

tyu15826大家
蓋婭薔薇—亞獸之戰已更新,面對911的威脅,貝歐等人開始聚集並團結對抗看更多我要大聲說1小時前


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】