新到貨2本75折
Unity 3D ShaderLab 開發實戰詳解(第2版)

Unity 3D ShaderLab 開發實戰詳解(第2版)

  • 定價:414
  • 優惠價:87360
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

Shader在3D游戲中的作用、Shader的實例化、Shader的實現語言等;Unity中Shader的形態、SubShader的重要標簽、可編程Shader、Surface Shader;Shader中用到的各種空間的概念和Shader中的投影矩陣;基本的光照模型;第一個被執行的Pass,包括渲染路徑和Pass的LightMode標簽;VertexLit渲染路徑,包括頂點照明和Unity存放光源的方式;Forward渲染路徑;基於光照貼圖的烘焙照明;NDC的驗證;基於LightProbes的照明;平面陰影;球體陰影;體積陰影;映射陰影;內置的陰影;Pass的通用指令開關;Blend操作;Stencil蒙版;固定管線;Surface Shader;凹凸材質;卡通材質;鏡面材質;半透明材質;制作透明材質;體積霧;Wrap Model新解;用Shader切割物體;面積光;體積光;材質替代渲染;自定義材質編輯器;后期效果;地形;投影;Shader的組織和復用。本書還包含你必須知道的渲染概念及基於渲染路徑的優化、移動平台上的優化等實戰內容,是不可多得的實戰教程。

本書適合移動開發者、游戲開發者、程序員閱讀,可作為大專院校相關專業的師生用書,也可當作培訓學校的教材。
 

目錄

第1篇 初識廬山真面目——Unity3DShader

第1章 虛擬世界的「魔法」——Shader(着色器)的概念和在3D游戲中的作用2
1.1Shader的概念2
1.1.1虛擬世界中的光明和色彩2
1.1.2游戲開發人員的終點2
1.1.3Shader(着色器)簡史2
1.2Shader的實例化3
1.3Shader的實現語言3
1.3.1GPU上的編程3
1.3.2Unity中的着色器編程3

第2章 Unity中Shader(着色器)的形態4
2.1Unity通過ShaderLab來組織Shader4
2.1.1關鍵字Shader4
2.1.2使用SubShader組織Shader的不同實現4
2.1.3SubShader的重要標簽4
2.1.4SubShader中的Pass塊5
2.1.5Pass塊的標簽及其名字的意義5
2.1.6使用FallBack保證Shader的廣泛適應性6
2.2Unity的ShaderLab所支持的Shader編程語言6
2.3Unity中Shader的3種形態6
2.3.1固定管線6
2.3.2可編程Shader7
2.3.3ShaderLab的驕傲:
SurfaceShader8
2.4Shader的數據接口:屬性和uniform變量8
2.4.1在Properties塊中定義屬性8
2.4.2通過圖形界面操作屬性9
2.4.3通過腳本操控屬性9
2.4.4矩陣:不能在屬性塊定義的變量10
2.4.5在Cg代碼中使用屬性10

第3章 Shader(着色器)中用到的各種空間概念11
3.1模型空間11
3.1.1為什麼用模型空間11
3.1.2在腳本和Shader中進出模型空間11
3.2世界坐標空間11
3.2.1統一表達:世界坐標空間11
3.2.2在腳本和Shader中進出世界坐標空間12
3.3視空間12
3.3.1渲染的需要:視空間12
3.3.2在腳本和Shader中進出視空間12
3.4空間的一塊:視錐體12
3.5剪切空間13
3.5.1投影13
3.5.2腳本和Shader中的投影矩陣13
3.5.3驗證NDC14
3.6NDC之后14
3.6.1NDC之后發生的事情14

第4章 基本的光照模型16
4.1光源對物體照明的分類16
4.1.1間接照明16
4.1.2直接照明16
4.2照明的計算方式:光照模型16
4.2.1漫反射和Lambert16
4.2.2鏡面高光和Phong17
4.2.3半角向量和BlinnPhong18

第2篇讓你的應用更炫彩——Unity中的照明

第5章 第一個被執行的Pass20
5.1不同的LightMode被選擇的順序20
5.1.1渲染路徑和Pass的LightMode標簽20
5.1.2設計可以檢測渲染路徑的材質20
5.1.3設計便於檢測渲染路徑的場景23
5.1.4VertexLit渲染路徑下Pass的執行23
5.1.5Forward渲染路徑下Pass的執行23
5.1.6Deferred渲染路徑下Pass的執行23
5.1.7不同渲染路徑下的Pass執行規則總結24
5.23個渲染路徑之外24
5.2.1LightMode的其他值24
5.2.2設計檢測用的材質24
5.2.3Always類型的Pass在3種渲染路徑下的執行26
5.2.4LightMode的默認值及其在3種渲染路徑下的執行27

第6章 VertexLit渲染路徑28
6.1頂點照明28
6.1.1什麼是頂點照明28
6.1.2存取光源的變量28
6.2頂點照明和Unity存放光源的第一種方式29
6.2.1用於調試輸出的材質29
6.2.2設計用於檢測的場景29
6.2.3在VertexPass中的檢測結果30
6.2.4無效數據30
6.3頂點照明和Unity存放光源的第二種方式31
6.3.1用於調試輸出的材質31
6.3.2設計用於檢測的場景32
6.3.3在VertexPass中的檢測結果32
6.4頂點照明和Unity存放光源的第三種方式33
6.4.1Unity為VertexPass准備的光源33
6.4.2設計用於檢測的場景33
6.4.3頂點照明中的點光源33
6.4.4計算頂點照明的ShadeVertexLights函數34
6.4.5頂點照明中的Pixel光源34
6.4.6頂點照明中的平行光35
6.4.7頂點照明中的燈光信息小結37
6.4.8一個頂點照明的實現例子37

第7章 Forward渲染路徑39
7.1渲染物體——ForwardBase和ForwardAdd39
7.1.1設計檢測用的場景和材質39
7.1.2ForwardBase和ForwardAdd的表現41
7.2Forward渲染路徑下的重要光源41
7.2.1設計檢測用的材質41
7.2.2不存在Pixel光源時的情況42
7.2.3存在Pixel平行光時的情況42
7.2.4存在Pixel點光源時的情況42
7.2.5有多種類型的Pixel光源時的情況43
7.2.6Forward渲染路徑下的Pixel光源小結43
7.3重要光源在ForwardAdd內的執行43
7.3.1設計用來檢測Pixel光源的材質43
7.3.2設計檢測用的場景46
7.3.3檢測結果:ForwardAdd如何被執行46
7.4ForwardBase和Unity存放光源的第一種方式47
7.4.1設計檢測用的材質47
7.4.2第一種方式內的Vertex點光源48
7.4.3第一種方式內的平行光48
7.4.4第一種方式內的重要Pixel點光源48
7.4.5只有ForwardBase時的情況總結49
7.4.6ForwardAdd對ForwardBase內光源的影響49
7.4.7有ForwardAdd時存放光源數據第一種方式的總結51
7.5ForwardAdd和Unity存放光源的第一種方式51
7.5.1設計檢測用的材質51
7.5.2設計檢測用的場景52
7.5.3ForwardAdd內的Pixel光源52
7.5.4ForwardAdd內的平行光53
7.5.5數組變量unity_4LightPos的使用情況分析53
7.6Forward渲染路徑和Unity存放光源的第三種方式53
7.6.1檢測ForwardBase內情況的材質53
7.6.2檢測結果:第三種方式不包含對ForwardBase有效的數據54
7.6.3檢測結果:第三種方式不包含對ForwardAdd有效的數據54
7.7Forward渲染路徑總結55
7.7.1Forward渲染路徑下材質的適應性55
7.7.2Unity如何為Forward渲染路徑設置光源55

第8章 基於光照貼圖的烘焙照明56
8.1單光照貼圖和VertexLit渲染路徑56
8.1.1測試烘焙的場景56
8.1.2烘焙場景中使用的材質57
8.1.3烘焙的前提:靜態物體57
8.1.4如何在烘焙中使用自發光材質57
8.1.5烘焙之后靜態物體和非靜態物體的實時照明59
8.1.6應用光照貼圖到VertexLit渲染路徑下的材質中59
8.1.7通過自己的材質改變實時光源對烘焙后物體的照明61
8.2在效果和性能間進行權衡62
8.2.1影響全局的Resolution選項62
8.2.2影響單個物體的ScaleInLightmap選項63
8.3單光照貼圖和Forward渲染路徑64
8.3.1單光照貼圖在VertexLit和Forward下面的不同表現64
8.3.2准備可應用於烘焙的自發光材質64
8.3.3在ForwardBase內計算光照貼圖66
8.3.4Forward渲染路徑下烘焙之后的實時照明67
8.4單光照貼圖在Deferred渲染路徑下的實時陰影69
8.5雙光照貼圖和Deferred渲染路徑69
8.5.1全局GI、間接照明以及雙光照貼圖69
8.5.2混合雙光照貼圖和實時照明69
8.5.3觀察混合過程71
8.5.4雙光照貼圖的使用限制72
8.6雙光照貼圖和Forward渲染路徑
……
第3篇使應用更逼真——Shadows(陰影)
 

詳細資料

  • ISBN:9787115386243
  • 規格:322頁 / 普通級 / 2-1
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【其他】2024采實電子書全書系:春暖花開‧享閱讀,參展書單書85折起、任選3本79折
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 翦商作者新作79折
  • 針灸匠張寶旬
  • 浪漫小說精選3本72折