![](/c49/32/10043382443494.jpg)
出版社:機械工業出版社 ISBN:9787111698197 商品編碼:10043382443494 代碼:99 作者:陸澤西
"?書[0名0]: | ?Unity3D編程:[1主1]程手記|8085121 | ?圖書代碼: | | ?圖書作者: | ?陸澤西 | ?出版社: | ?[1機1]械工業出版社 | ?出版日期: | ?2021-12-21 0:00:00 | ?ISBN號: | ?9787111698197 | ?開本: | ?16開 | ?頁數: | ?386 | ?版次: | ?1-1 |
?內容簡介 | 本書分 10 章,每章都是一個[0獨0]立的[0知0]識[令頁]域,讀者可以按照章節順序閱讀本書,也可以根據喜[女子]挑選自己感興趣的章節[0學0]習。[0第0] 1 章講了架構的意義、架構的原理以及如何實現架構。[0第0] 2 章對 C# 技術的基礎[0知0]識做了詳細的講解。[0第0] 3 章[1主1]要針對客戶端中的表格數據、程序的協作與應用進行講解。[0第0] 4章介紹的是用戶界[mian](UI)的工作原理與[0優0]化手段。[0第0] 5 章針對 3D 模型的原理、動畫的原理以及兩者的[0優0]化做了詳細的講解。[0第0] 6 章介紹的是網絡層的業務與底層原理。[0第0] 7 章針對各種 AI 類型進行了解析。[0第0] 8 章[1主1]要介紹場景構建與[0優0]化、地圖構建以及尋路算[0法0][0優0]化的相關[0知0]識。[0第0] 9 章則給出了圖形數[0學0]、圖形[0學0]常用算[0法0]、渲染管線的相關[0知0]識。[0第0] 10 章針對客戶端各類渲染技術的渲染原理進行了詳細的解析。 |
?目錄 | 前言 [0第0]1章軟[亻牛]架構 1 1.1架構的意義 1 1.2軟[亻牛]架構的思維方式 5 1.3如何構建Unity3D項目 9 [0第0]2章C#技術要點 14 2.1Unity3D中C#的底層原理 14 2.2List底層源碼剖析 17 2.3Dictionary底層源碼剖析 27 2.4浮點數的精度問題 39 2.5委托、事[亻牛]、裝箱、拆箱 44 2.5.1委托與事[亻牛] 44 2.5.2裝箱和拆箱 45 2.6排序算[0法0] 48 2.6.1快速排序算[0法0] 48 2.6.2[*][0大0][*]小堆 50 2.6.3其他排序算[0法0]概述 51 2.7各類搜索算[0法0] 51 2.7.1搜索算[0法0]概述 52 2.7.2二分查找算[0法0] 52 2.7.3二叉樹、二叉查找樹、平衡二叉樹、紅黑樹和B樹 52 2.7.4四叉樹搜索算[0法0] 53 2.7.5八叉樹搜索算[0法0] 54 2.8業務邏輯[0優0]化技巧 54 2.8.1使用List和Dictionary時[扌是]高效率 55 2.8.2巧用struct 55 2.8.3盡可能地使用對像池 57 2.8.4字符串導致的性能問題 61 2.8.5字符串的隱藏問題 64 2.8.6程序運行原理 65 [0第0]3章數據表與程序 68 3.1數據表的種類 68 3.1.1[0大0]部分數據都是在Excel裡生成的 68 3.1.2[*]原始的數據方式—代碼數據 69 3.1.3文本數據 69 3.1.4比特流數據 70 3.2數據表的制作方式 71 3.2.1制作方式簡介 71 3.2.2讓數據使用起來更加方便 72 3.3多語言的實現 75 [0第0]4章用戶界[mian] 78 4.1用戶界[mian]繫統的比較 78 4.2UGUI繫統的原理及其組[亻牛]使用 79 4.2.1UGUI繫統的運行原理 79 4.2.2UGUI繫統的組[亻牛] 80 4.3UGUI事[亻牛]模塊剖析 82 4.3.1UGUI事[亻牛]繫統源碼剖析 82 4.3.2輸入事[亻牛]源碼 82 4.3.3事[亻牛]數據模塊 83 4.3.4輸入事[亻牛]捕獲模塊源碼 84 4.3.5[身寸]線踫撞檢測模塊源碼 89 4.3.6事[亻牛]邏輯處理模塊 91 4.4UGUI核心源碼剖析 91 4.4.1UGUI核心源碼結構 91 4.4.2Culling模塊 91 4.4.3Layout模塊 93 4.4.4MaterialModifiers、Specialized-Collections和Utility 94 4.4.5VertexModifiers 95 4.4.6核心渲染類 96 4.5快速構建一個簡單易用的UI框架 101 4.6UI[0優0]化 107 4.6.1UI動靜分離 108 4.6.2拆分過重的UI 108 4.6.3UI預加載 109 4.6.4UI圖集Alpha分離 110 4.6.5UI字體拆分 111 4.6.6Scroll View[0優0]化 112 4.6.7網格重構的[0優0]化 113 4.6.8UI展示與關閉的[0優0]化 114 4.6.9對像池的運用 114 4.6.10UI貼圖設置的[0優0]化 115 4.6.11內存洩漏 117 4.6.12針對高低端[1機1]型的[0優0]化 123 4.6.13UI圖集拼接的[0優0]化 126 4.6.14GC的[0優0]化 127 [0第0]5章3D模型與動畫 134 5.1美術資源規範 134 5.2合並3D模型 141 5.2.1網格模型的基礎[0知0]識 141 5.2.2動態批處理 143 5.2.3靜態批處理 144 5.2.4自己編寫合並3D模型的程序 145 5.3狀態[1機1] 147 5.3.1如何用狀態[1機1]模擬人物行為動作 147 5.3.2在遊戲的人物行為動作中使用狀態[1機1] 148 5.3.3在遊戲項目中使用狀態[1機1]的地方 148 5.43D模型的變與換 152 5.4.1切割模型 154 5.4.2扭曲模型 156 5.4.3簡化模型 157 5.4.4蒙皮骨骼動畫 159 5.4.5人物3D模型動畫換皮換裝 165 5.4.6捏臉 167 5.4.7動畫[0優0]化 169 5.5資源的加載與釋放 176 [0第0]6章網絡通信 183 6.1TCP與UDP 183 6.1.1TCP和UDP簡介 183 6.1.2UDP的特點 185 6.1.3是用TCP還是用UDP 186 6.2C#實現TCP 187 6.2.1程序實現TCP長連接 187 6.2.2TCP的API庫 187 6.2.3線程鎖 188 6.2.4緩衝隊列 188 6.2.5[0雙0]隊列結構 190 6.2.6發送數據 191 6.2.7協議數據定義標準 192 6.2.8斷線檢測 195 6.3C#實現UDP 196 6.3.1實現UDP 196 6.3.2連接確認[1機1]制 196 6.3.3數據包校驗與重發[1機1]制 199 6.3.4丟包問題分析 201 6.4封裝HTTP 202 6.4.1HTTP協議原理 202 6.4.2HTTP1.0、HTTP1.1、HTTP2.0簡述 204 6.4.3在Unity3D中的HTTP封裝 206 6.4.4多次請求時連續發送HTTP請求引起的問題 209 6.5網絡數據協議原理 222 6.5.1協議包的格式 222 6.5.2JSON 223 6.5.3自定義二進制數據流協議格式 224 6.5.4MessagePack 226 6.5.5Protobuf 229 6.5.6限定符的規則 231 6.5.7Protobuf的原理:序列化和反序列化 232 6.5.8Protobuf更改數據結構後的兼容問題 235 6.5.9Protobuf的[0優0]點 236 6.5.10Protobuf的不足 237 6.6網絡同步解決方案 237 6.6.1狀態同步[0法0] 237 6.6.2實時廣播同步[0法0] 239 6.6.3幀同步 240 6.6.4同步快進 242 6.6.5精度問題 243 6.6.6同步鎖[1機1]制 244 [0第0]7章遊戲中的AI 245 7.1用狀態[1機1]構建AI 245 7.2用行為樹構建AI 251 7.2.1復合節點 252 7.2.2修飾節點 253 7.2.3條[亻牛]節點 253 7.2.4行為節點 253 7.3非典型性AI 255 7.3.1可演算式AI 255 7.3.2博弈式AI 257 [0第0]8章地圖與尋路 259 8.1A星算[0法0]及其[0優0]化 259 8.1.1長距離導航 262 8.1.2A星排序算[0法0][0優0]化 264 8.1.3尋路期望值[0優0]化 265 8.1.4通過[0權0]重引導尋路方向 267 8.1.5拆分尋路區域 268 8.1.6A星算[0法0]細節[0優0]化 270 8.1.7尋路規則[0優0]化JPS 271 8.2 尋路網格的構建 275 8.2.1數組構建網格 275 8.2.2路點網格 277 8.2.3平[mian]三角形網格 279 8.2.4多層級網格 282 8.2.5三角形網格中的A星算[0法0] 283 8.2.6體素化尋路網格 286 8.2.7RecastNavigation Navmesh 288 8.3地圖編輯器 290 8.3.1地圖編輯器的基本功能 290 8.3.2數據協議格式在編輯器中的選擇 292 8.3.3地圖加載方式 293 8.3.4地圖九宮格 294 8.4地圖的制作與[0優0]化 296 8.4.1地圖的制作方式 296 8.4.2常規場景的性能[0優0]化 299 [0第0]9章渲染管線與圖形[0學0] 306 9.1圖形[0學0]基礎 306 9.1.1向量的意義 307 9.1.2點積的幾何意義 307 9.1.3叉乘的幾何意義 308 9.1.4向量之間的投影 309 9.1.5矩陣的意義 310 9.1.6矩陣旋轉、縮放、投影、鏡像和仿[身寸] 312 9.1.7齊次坐標的平移矩陣 320 9.1.8如何數 321 9.2渲染管線 324 9.2.1OpenGL、DirectX圖形接口 324 9.2.2渲染管線是什麼 325 9.2.3混合 337 9.2.4渲染管線總結 341 [0第0]10章渲染原理與[0知0]識 343 10.1渲染順序 343 10.2Alpha Test 345 10.3Early-Z GPU硬[亻牛][0優0]化技術 347 10.4Mipmap的原理 348 10.5顯存的工作原理 350 10.6Filter濾波方式 351 10.7實時陰影是如何生成的 354 10.8[1光1]照紋理烘焙原理 357 10.9GPU Instancing的來龍去脈 362 10.10著色器編譯過程 369 10.11Projector投影原理 372
|
?編輯推薦 | Unity3D遊戲開發[令頁]域裡程碑之作,上市公司遊戲[1主1]程多年工作[糸巠]驗結晶。 層層拆解Unity3D遊戲客戶端架構,深入剖析各個模塊技術方案,詳細講解遊戲客戶端的渲染原理。
|
^_^:326c83ed0b704fea4128c76be4de0b56 ^_^:809771d333cc79cbd271a7be95226c53
" |