作 者:唐福幸 編
定 價:49
出 版 社:清華大學出版社
出版日期:2021年10月01日
頁 數:132
裝 幀:平裝
ISBN:9787302590378
"1、按照shader編碼的順序進行講解,方便讀者理解。2、提煉總結,將shader中常用的函數彙總成表格,方便讀者記憶。3、覆蓋面廣,shader中涉及到的庫文件都會一一講解。4、以落地shader案例做總結,加深讀者的理解。"
●第1章初識URP
1.1URP與HDRP
1.2創建URP項目
1.2.1創建新的URP項目
1.2.2升級舊項目為URP項目
1.3URP內置Shader
1.3.1Lit
1.3.2Simple Lit
1.3.3Baked Lit
1.3.4Unlit
1.4手寫Shader的必要性
1.5Shader文件所在路徑
1.6Packages中的其他文件
1.6.1Core RP Librariy
1.6.2Universal RP
1.7常用文件之間的包含關繫
第2章Lit.shader
2.1Lit主文件
2.1.1Properties代碼塊
2.1.2SubShader代碼塊
2.1.3FallBack
2.1.4代碼結構
2.2ForwardLit Pass
2.2.1Pass標簽
2.2.2編譯指令
2.2.3聲明關鍵詞
2.2.4包含指令
2.3包含文件的定義及使用
2.3.1包含文件的定義方式
2.3.2包含文件的使用方式
第3章LitInput.hlsl
3.1聲明屬性變量
3.2紋理采樣
3.2.1采樣函數的宏定義
3.2.2金屬和高光采樣函數
3.2.3AO采樣函數
3.3SurfaceInput.hlsl
3.3.1SurfaceData結構體
3.3.2透明度函數
3.3.3Albedo紋理采樣函數
3.3.4法線貼圖采樣函數
3.3.5自發光貼圖采樣函數
3.4表面數據初始化函數
3.5函數和宏定義總結
第4章LitForwardPass.hlsl
4.1GPU實例
4.2結構體
4.2.1頂點函數輸入結構體
4.2.2頂點函數輸出結構體
4.3Common.hlsl
4.3.1規範
4.3.2函數
4.4輸入數據初始化函數
4.4.1Input.hlsl
4.4.2初始化函數第1部分
4.4.3SpaceTransforms.hlsl
4.4.4初始化函數第2部分
4.5頂點函數
4.5.1頂點函數第1部分
4.5.2頂點函數第2部分
4.5.3頂點函數第3部分
4.5.4頂點函數第4部分
4.6片段函數
4.7函數和宏定義總結
4.8Unlit Shader案例
4.8.1完整Shader代碼
4.8.2代碼解析
第5章其餘四個Pass
5.1ShadowCaster Pass
5.1.1Pass代碼塊
5.1.2ShadowCasterPass.hlsl
5.2DepthOnly Pass
5.2.1Pass代碼塊
5.2.2DepthOnlyPass.hlsl
5.3Meta Pass
5.3.1Pass代碼塊
5.3.2MetaPass.hlsl
5.4Universal2D Pass
5.4.1Pass代碼塊
5.4.2Universal2D.hlsl
第6章Shader Graph
6.1Shader Graph介紹
6.2使用流程
6.3常用節點
6.3.1數據輸入類節點
6.3.2數學計算類節點
6.3.3向量處理類節點
6.3.4視覺調整類節點
第7章車漆Shader案例
7.1設計邏輯
7.2使用Shader Graph梳理邏輯
7.2.1創建屬性變量
7.2.2Albedo部分節點
7.2.3Occlusion部分節點
7.2.4Clear Coat部分節點
7.2.5Flake部分節點
7.2.6Specular和Smoothness部分節點
7.2.7完整節點連接
7.3測試Shader效果
7.4編寫車漆Shader代碼
7.4.1CarPaint.shader文件
7.4.2CarPaintInput.hlsl文件
7.4.3CarPaintForwardPass.hlsl文件
第8章流光燈特效Shader案例
8.1效果分析
8.2使用Shader Graph梳理邏輯
8.2.1開放屬性變量
8.2.2Albedo和Normal部分節點
8.2.3Metallic和Smoothness部分節點
8.2.4燈光部分節點連接
8.2.5完整節點連接
8.3編寫流光燈Shader代碼
8.3.1FlowingLight.shader文件
8.3.2FlowingLightInput.hlsl文件
8.3.3FlowingLightForwardPass.hlsl文件
後記
參考文獻
本書是一部繫統講解Unity Universal Render Pipeline內置Shader的應用型圖書,旨在使讀者能夠了解URP與傳統渲染流水線Shader的不同之處,讓讀者盡快在URP項目中編寫出所需的Shader。本書采用串聯講解的方式編寫而成,主要分為三部分:第一部分包含第1章,主要為了給讀者普及URP的基本知識、項目的配置方法、內置Shader的不同用途以及Package中不同包含文件的作用,使之前還沒有接觸過URP的讀者在學習之前能夠全面了解URP;第二部分包含第2~5章,主要講解了URP中最復雜的內置Shader——Lit,以及Shader中關聯到的包含文件、函數和宏定義;第三部分包含第6~8章,講解了Unlit內置的可視化Shader編輯器Shader Graph,並等
唐福幸 編
唐福幸,資深3D美術師,從事3D行業已有六年,先後在多家公司擔任3D美術主管、3D技術美術師,擅長一切從零開始:開創團隊、制定流程、人員培訓、效果把控。能夠熟練使用30餘款3D專業軟件,樂於鑽研技術,並與人溝通分享。