Shader筆記-函數介紹

在CGPROGRAM這里分為頂點函數與片元函數。下面代碼有簡單的介紹每個函數,這個是固定的,就有點像unity中的一些生命周期函數。

Shader "BanMing/SecondShader" {
Properties {

}
SubShader {
    Pass{
            CGPROGRAM
            //頂點函數,這里只是聲明頂點函數的函數名
            //從模型空間轉換到剪裁空間的轉換(從游戲環境轉換到視野相機屏幕上)
#pragma vertex vert
            //片元函數,這里只是聲明片元函數的函數名
            //返回模型對應在屏幕上的每一個像素的顏色值
#pragma fragment frag

                float4 vert(float4 v :POSITION) :SV_POSITION{
                    //通過語義告訴系統,我這個參數是干嘛的,比如POSITION是要告訴系統我要的頂點坐標
                    //SV_POSITION這個語義用來解釋說明返回值,意思是返回值時剪裁空間下的頂點坐標
                    return mul(UNITY_MATRIX_MVP,v);
                }
                
                fixed4 frag() :SV_Target {
                    return fixed4(1,1,1,1);
                }
                
            ENDCG
    }
}
FallBack "Diffuse"
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • <轉>我也忘了轉自哪里,抱歉,感謝原作者 什么是Shader Shader(著色器)是一段能夠針對3D對象進行操作...
    星易乾川閱讀 5,634評論 1 16
  • 111. [動畫系統]如何將其他類型的動畫轉換成關鍵幀動畫? 動畫->點緩存->關鍵幀 112. [動畫]Unit...
    胤醚貔貅閱讀 13,170評論 3 89
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,065評論 25 708
  • 轉載注明出處:點擊打開鏈接 Shader(著色器)是一段能夠針對3D對象進行操作、并被GPU所執行的程序。Shad...
    游戲開發小Y閱讀 3,437評論 0 4
  • 很久沒有認真看過天空 似乎都快忘了它的樣子 好像有什么束縛著我們 不愿張開雙臂,享受清風
    小醒閱讀 693評論 1 0