商品參數
| Unity 5.X從入門到精通 |
| | 定價 | 158.00 |
| 齣版社 | 中國鐵道齣版社 |
| 版次 | B1 |
| 齣版時間 | 2016年01月 |
| 開本 | 16 |
| 作者 | Unity Technologies |
| 裝幀 | 01 |
| 頁數 | |
| 字數 | 936000 |
| ISBN編碼 | 9787113210472 |
? ?初 識 篇
第1章 認識Unity引擎 1
1.1 Unity簡介 2
1.2 Unity發展史 3
1.3 Unity 5.0 4
第2章 Unity開發案例介紹 7
2.1 Unity遊戲介紹 8
2.2 Unity非遊戲應用 11
第 3 章 軟件安裝、授權與服務 13
3.1 軟件安裝 14
3.1.1 在Windows下的安裝 14
3.1.2 在Mac下的安裝 17
3.2 授權 19
3.3 服務 23
第 4 章 Unity開發資源介紹 25
4.1 Unity Asset Store資源商店 26
4.1.1 Asset Store簡介 26
4.1.2 Asset Store使用方法 27
4.2 其他服務 31
4.2.1 Unity Ads服務 31
4.2.2 Unity Game Analytics服務 32
4.2.3 Unity Cloud Build服務 32
4.2.4 Everyplay服務 33
操 作 篇
第 5 章 Unity編輯器 35
5.1 界麵布局 36
5.1.1 導航窗口 37
5.1.2 界麵布局 39
5.1.3 界麵定製 40
5.2 打開範例工程 41
5.3 工具欄 44
5.3.1 Transform Tools(變換工具) 45
5.3.2 Transform Gizmo Tools
(變換輔助工具) 48
5.3.3 Play(播放控製) 48
5.3.4 Layers(分層下拉列錶) 49
5.3.5 Layout(布局下拉列錶) 49
5.4 菜單欄 49
5.4.1 File(文件)菜單 49
5.4.2 Edit(編輯)菜單 52
5.4.3 Assets(資源)菜單 53
5.4.4 GameObject(遊戲對象)菜單 53
5.4.5 Component(組件)菜單 54
5.4.6 Window(窗口)菜單 54
5.4.7 Help(幫助)菜單 55
5.5 常用工作視圖 55
5.5.1 Project(項目)視圖 55
5.5.2 Scene(場景)視圖 58
5.5.3 Game(遊戲)視圖 64
5.5.4 Inspector(檢視)視圖 67
5.5.5 Hierarchy(層級)視圖 68
5.5.6 Console(控製颱)視圖 69
5.5.7 Animation(動畫)視圖 70
5.5.8 Animator(動畫控製器)視圖 70
5.5.9 Sprite Editor(Sprite編輯器) 71
5.5.10 Sprite Packer(Sprite打包工具) 73
5.5.11 Lightmaps(光照貼圖烘焙)
視圖 75
5.5.12 Occlusion(遮擋剔除)
視圖 76
5.5.13 Navigation(導航尋路)
視圖 76
5.5.14 Version Control(版本控製)
視圖 77
5.5.15 Asset Store(資源商店) 77
第 6 章 創建基本的3D遊戲場景 79
6.1 創建遊戲工程和場景 80
6.2 創建地形 83
6.2.1 編輯地形 83
6.2.2 添加樹木和植被 90
6.2.3 添加水效果 93
6.3 創建光源和陰影 94
6.4 添加場景靜態景物 97
6.4.1 創建基本幾何體 97
6.4.2 導入外部物體 100
6.5 添加角色和控製 102
6.5.1 創建第—人稱角色控製器 102
6.5.2 創建物理阻擋 105
6.6 添加環境和效果 108
6.6.1 添加天空盒 108
6.6.2 添加霧效 110
6.6.3 添加音效 111
第 7 章 創建基本的2D遊戲場景 115
7.1 創建遊戲工程和場景 116
7.2 創建工作層 118
7.3 添加靜態景物 119
7.3.1 導入靜態圖片 119
7.3.2 創建靜態景物 119
7.4 添加角色和控製 123
7.4.1 創建Sprite動畫 123
7.4.2 創建主要的遊戲對象 131
7.4.3 創建2D物理阻擋 139
7.5 添加2D效果 142
第 8 章 資源導入導齣流程 147
8.1 外部資源的創建 148
8.1.1 外部資源創建工具介紹 148
8.1.2 從3ds Max中導齣模型、材質和動畫 149
8.2 Unity資源導入流程 155
8.2.1 3D模型、材質的導入 155
8.2.2 2D圖像的導入及設置 163
8.2.3 3D動畫的導入 174
8.2.4 2D動畫的導入 176
8.2.5 音頻、視頻的導入及設置 179
8.3 資源包的導入 184
8.3.1 Unity Asset Store簡介 184
8.3.2 Unity Asset Store的使用 185
8.4 資源包的導齣 189
第 9 章 遊戲對象、組件和Prefabs 193
9.1 創建遊戲對象和組件 194
9.2 常用組件介紹 197
9.3 創建Prefabs 198
9.3.1 創建和導入Prefabs 199
9.3.2 實例化Prefabs 202
9.3.3 嵌套Prefabs
(Nested Prefabs) 206
第 10 章 Shuriken粒子係統 213
10.1 Shuriken概述 214
10.2 基本用法舉例 215
10.3 高級應用技巧 221
10.3.1 地麵火焰效果案例 221
10.3.2 煙花效果案例 238
10.4 係統參數詳解 252
第 11 章 Mecanim動畫係統 263
11.1 Mecanim概述 264
11.2 應用示例 265
11.3 資源的準備和導入 275
11.3.1 如何獲取人形網格模型 275
11.3.2 如何導入動畫 276
11.3.3 動畫分解 276
11.4 使用人形角色動畫 279
11.4.1 創建Avatar 280
11.4.2 配置Avatar 281
11.4.3 設置Muscle參數 283
11.4.4 Avatar Mask 284
11.4.5 人形動畫的重定嚮 285
11.4.6 逆嚮運動學功能 288
11.4.7 —般動畫 291
11.5 在遊戲中使用角色動畫 292
11.5.1 循環動畫片段 292
11.5.2 Animator組件 293
11.5.3 Animator Controller 293
11.5.4 動畫狀態機 294
11.5.5 混閤樹 299
11.5.6 1D混閤 300
11.5.7 2D混閤 301
第 12 章 物理係統 303
12.1 概述 304
12.2 應用示例 304
12.3 高級應用技巧 309
12.4 物理係統相關組件及參數詳解 318
12.4.1 Rigidbody組件 318
12.4.2 Character Controller組件 322
12.4.3 碰撞體組件 324
12.4.4 布料組件 332
12.4.5 關節組件 335
12.4.6 2D Physics Effectors組件 349
12.4.7 力場組件 351
第 13 章 音效係統 355
13.1 概述 356
13.2 應用示例 356
13.2.1 項目概要 356
13.2.2 項目分析 358
13.3 高級應用技術 362
13.4 聲音係統相關組件及參數詳解 368
第 14 章 全局光照 371
14.1 全局光照介紹 372
14.2 基本用法舉例 372
14.3 高級應用技巧 376
14.4 係統參數介紹 388
第 15 章 導航網格尋路 397
15.1 概述 398
15.2 簡單應用舉例 398
15.3 高級應用技巧 404
15.3.1 使用Off-Mesh Link組件 404
15.3.2 為網格分層 406
15.3.3 動態更改可行進層 410
15.3.4 使用Navmesh Obstacle 組件 413
15.4 係統相關參數詳解 415
第 16 章 遮擋剔除 419
16.1 概述及其應用示例 420
16.2 高級應用技巧 423
16.2.1 使用Occlusion Area組件 423
16.2.2 使用Occlusion Portals組件 424
16.3 設置烘焙參數 425
第 17 章 後期屏幕渲染特效 427
17.1 概述 428
17.2 使用參數詳解 433
開 發 篇
第 18 章 3D數學基礎知識 457
18.1 3D坐標係
(3D Coordinate System) 458
18.2 嚮量(Vector) 464
18.3 矩陣(Maxtrix) 468
18.4 齊次坐標 470
18.5 四元數 470
第 19 章 Unity腳本開發基礎 475
19.1 腳本介紹 476
19.2 Unity腳本語言 477
19.3 創建並運行腳本 478
19.3.1 創建腳本 478
19.3.2 MonoDevelop編輯器 479
19.3.3 必然事件(Certain Events) 481
19.4 C#基本語法 485
19.5 訪問遊戲對象和組件 493
19.5.1 MonoBehaviour類 493
19.5.2 訪問遊戲對象 493
19.5.3 訪問組件 494
19.6 常用腳本API 498
19.6.1 Transform組件 498
19.6.2 Time類 501
19.6.3 Random類 502
19.6.4 Mathf類 502
19.6.5 Coroutine協同程序 504
第 20 章 輸入與控製 507
20.1 Input Manager(輸入管理器) 508
20.2 鼠標輸入 510
20.3 鍵盤操作 512
20.4 遊戲外設輸入 515
20.5 移動設備輸入 516
20.6 自定義輸入 519
第 21 章 GUI開發 523
21.1 Unity新GUI係統介紹 524
21.1.1 畫布(Canvas) 524
21.1.2 Rect Transform
(矩形變換) 526
21.1.3 在場景視圖中編輯
(Editing in the Scene View) 527
21.1.4 錨點(Anchors) 527
21.1.5 軸心點(Pivot) 528
21.1.6 文本(Text) 529
21.1.7 圖像(Image) 530
21.1.8 原始圖像(Raw Image) 531
21.1.9 遮罩(Mask) 532
21.1.10 過渡選項
(Transition Options) 532
21.1.11 導航選項
(Navigation Options) 534
21.1.12 按鈕(Button) 534
21.1.13 開關(Toggle) 535
21.1.14 滑動條(Slider) 536
21.1.15 滾動條(Scrollbar) 537
21.1.16 輸入欄(Input Field) 538
21.1.17 布局元素控件
(Layout Element) 539
21.1.18 內容尺寸裁切
(Content Size Fitter) 540
21.1.19 長寬比例裁切
(Aspect Ratio Fitter) 540
21.1.20 水平布局組
(Horizontal Layout Group) 541
21.1.21 垂直布局組
(Vertical Layout Group) 541
21.1.22 網格布局組
(Grid Layout Group) 542
21.2 UGUI應用實例 543
第 22 章 Shader開發 547
22.1 Shader概述 548
22.2 內建Shader介紹 549
22.2.1 內建著色器(4.X版本) 549
22.2.2 內建標準著色器(5.X版本) 553
22.3 創建自己的Shader 563
22.4 ShaderLab基礎語法 565
22.4.1 Properties屬性 567
22.4.2 SubShader子著色器視圖 568
22.4.3 Fallback備用著色器 570
22.4.4 Category(分類) 570
22.5 Unity中的三種自定義Shader 571
22.5.1 固定功能管綫著色器
(Fixed Function Shaders) 571
22.5.2 錶麵著色器
(Surface Shaders) 572
22.5.3 頂點片段著色器
(Vertex and Fragment Shaders) 576
22.6 Reflection Probe(反射探頭) 581
第 23 章 AssetBundle工作流程 591
23.1 AssetBundle 593
23.1.1 AssetBundle的UI 593
23.1.2 BuildPipeline.BuildAsset-
Bundles 594
23.1.3 Unity處理Assets
之間的依賴 596
23.2 如何下載AssetBundle 598
23.3 AssetBundle的加載與卸載 599
23.3.1 加載AssetBundle 599
23.3.2 從AssetBundle中
加載Assets 602
23.3.3 從場景AssetBundle中加載
Assets 604
23.3.4 AssetBundle Variant的使用 605
23.3.5 卸載AssetBundle 605
23.4 AssetBundle的內存管理 606
23.4.1 下載和加載AssetBundle時
對內存的影響 606
23.4.2 AssetBundle以及Asset
的卸載 607
23.5 WWW、AssetBundle及Asset
的關係 608
第 24 章 開發進階 609
24.1 Unity新的網絡引擎UNET 610
24.1.1 授權服務器 610
24.1.2 非授權服務器 611
24.1.3 Hight Level API 611
24.1.4 Transport Layer API 624
24.1.5 WebGL Support 626
24.1.6 Internet Services 627
24.1.7 NetWorkView
(網絡視圖組件) 632
24.2 編輯器擴展 633
《像素秘境:Unity遊戲引擎深度探索與實戰》 開啓你的遊戲開發夢想之旅 你是否曾沉浸於那些令人驚嘆的遊戲世界,夢想親手打造屬於自己的數字奇跡?你是否對遊戲開發充滿好奇,卻不知從何下手?《像素秘境:Unity遊戲引擎深度探索與實戰》將是你踏入遊戲開發殿堂最堅實的指引,也是你將創意化為現實的最強助力。本書並非簡單地介紹Unity的某個版本功能,而是緻力於為你構建一個全麵、深入且極具實踐性的遊戲開發知識體係,讓你從一名 appassionato 的遊戲愛好者,蛻變為一名能夠獨立設計、開發並發布高質量遊戲的開發者。 本書的獨特性與價值所在: 與市麵上許多側重於單一版本功能介紹或泛泛而談的教程不同,《像素秘境》聚焦於遊戲開發的核心理念、精髓技術以及行業內的最佳實踐。我們深知,技術的更新迭代固然重要,但掌握那些永恒不變的開發思想和底層邏輯,纔能讓你在任何版本的Unity下都遊刃有餘。因此,本書將引導你深入理解Unity引擎的架構設計,掌握其背後運作的原理,從而觸類旁通,應對未來的技術挑戰。 內容深度剖析: 第一部分:奠定堅實基礎——理解遊戲引擎的靈魂 遊戲開發的基石: 我們將從最根本的概念講起,例如遊戲循環、渲染管綫、物理引擎、輸入係統等,幫助你建立對遊戲運行機製的宏觀認知。你將不再是被動地使用工具,而是真正理解工具為何如此設計,以及如何更有效地利用它們。 Unity引擎的內部運作: 深入剖析Unity的核心組件,如GameObject、Component、Scene、Asset等。我們將詳細講解它們之間的關係,以及Inspector麵闆背後所代錶的實際數據結構和邏輯。理解這些,是進行高效開發的前提。 C編程語言精要(遊戲開發視角): 本書將以遊戲開發的需求為導嚮,精講C語言中的關鍵特性,包括麵嚮對象編程(OOP)的深入理解、委托與事件的應用、LINQ查詢、異步編程(async/await)等。我們將通過大量遊戲開發場景來演示這些概念,讓你不僅知其然,更知其所以然。 第二部分:核心開發技術——構築遊戲世界的骨架 場景搭建與資源管理: 從零開始,學習如何高效地組織和管理你的項目資源(模型、貼圖、音頻、動畫等)。掌握地形創建、環境道具布局、光照與陰影的設置技巧,以及LOD(Level of Detail)等優化技術,為你的遊戲世界注入生命力。 精通遊戲物體與組件係統: 深入理解Unity的Component-Based Architecture(組件化架構)。學習如何創建自定義組件,實現遊戲角色的行為、交互邏輯、UI元素等。我們將探討如何設計健壯且可復用的組件,提升開發效率和代碼質量。 角色動畫與控製: 掌握Animator係統,學習如何創建和管理動畫狀態機,實現角色的行走、跳躍、攻擊等動作。我們將講解IK(Inverse Kinematics)的應用,以及如何通過腳本控製動畫的播放和過渡,讓角色栩栩如生。 物理引擎的奧秘: 詳細講解Unity的物理係統,包括Rigidbodies、Colliders、Joints等。學習如何模擬真實的物理交互,實現角色碰撞、物體彈跳、布娃娃效果等。我們將探討物理優化技巧,避免性能瓶頸。 用戶界麵(UI)設計與實現: 從Canvas係統到UI Toolkit(在更新版本中的介紹),學習如何創建豐富、交互式的用戶界麵,包括按鈕、文本框、滑動條、列錶等。掌握UI布局、響應式設計以及UI動畫的製作,打造用戶友好的操作體驗。 輸入係統詳解: 學習Unity的多平颱輸入係統,包括鍵盤、鼠標、手柄、觸摸屏等輸入方式的統一處理。我們將講解如何根據不同的輸入設備優化遊戲操作,提供流暢的遊戲體驗。 第三部分:進階開發與優化——打造遊戲的靈魂與生命力 AI(人工智能)基礎與應用: 學習導航網格(NavMesh)的構建與使用,實現NPC的尋路和智能行為。我們將探討有限狀態機(FSM)、行為樹(Behavior Tree)等AI設計模式,讓你的遊戲角色更加聰明。 粒子係統與特效製作: 掌握Unity強大的粒子係統(Shuriken),學習如何創建火焰、煙霧、爆炸、魔法等視覺特效,為遊戲增添衝擊力和錶現力。 音頻係統與聲音設計: 學習如何導入、管理和播放音效、背景音樂。掌握AudioSource、AudioListener、AudioMixer等組件,以及如何通過腳本控製音頻的播放、音量、空間化等,營造沉浸式的聽覺體驗。 遊戲性能優化: 性能是遊戲成功的關鍵。本書將係統講解Unity的性能剖析工具(Profiler),指導你識彆性能瓶頸,並提供多種優化策略,包括Draw Call Batching、Occlusion Culling、內存管理、腳本優化等,確保遊戲流暢運行。 跨平颱發布與部署: 學習如何將你的遊戲打包並發布到不同平颱,如PC(Windows, macOS, Linux)、移動端(Android, iOS)、Web以及主機平颱。我們將講解平颱相關的設置和注意事項。 第四部分:項目實戰——從概念到成品的全流程演練 本書的精髓在於大量的實踐項目。我們將從簡單的小遊戲開始,逐步深入到更復雜的項目,涵蓋不同類型的遊戲機製。例如: 2D平颱跳躍遊戲: 學習角色控製器、關卡設計、道具收集、敵人AI等。 3D射擊遊戲: 掌握第一人稱/第三人稱控製器、武器係統、彈道預測、敵人行為模式等。 休閑益智遊戲: 學習UI交互、遊戲邏輯、關卡生成、數據保存等。 每個項目都將詳細講解從需求分析、概念設計到代碼實現、資源整閤、最終優化的全過程。你將不僅僅是復製代碼,而是理解每一步的設計思路和技術選型。 本書的目標讀者: 零基礎的編程愛好者: 即使你沒有任何編程經驗,本書也將從C語言基礎講起,循序漸進,讓你逐步掌握遊戲開發的技能。 有其他遊戲引擎開發經驗的開發者: 如果你曾經使用過其他引擎,但想轉嚮Unity,本書將幫助你快速理解Unity的獨特之處,並掌握其核心開發模式。 對遊戲設計充滿熱情的學生與業餘開發者: 希望將自己的創意轉化為實際遊戲,為自己和他人帶來快樂。 希望提升Unity開發技能的初級/中級開發者: 深入理解引擎原理,掌握更高級的開發技術和優化方法。 閱讀本書,你將收獲: 紮實的遊戲開發理論基礎: 理解遊戲引擎的運作原理,掌握核心開發理念。 精湛的Unity開發技能: 熟練運用Unity提供的各種工具和API,高效完成項目開發。 獨立完成遊戲項目的能力: 從構思到發布,全程掌控遊戲開發流程。 解決實際開發問題的能力: 掌握性能優化、Bug調試等關鍵技巧。 通往遊戲開發職業道路的敲門磚: 建立起在遊戲行業中脫穎而齣的競爭力。 《像素秘境:Unity遊戲引擎深度探索與實戰》不僅僅是一本書,它是你開啓遊戲開發之路的啓程碑,是你實現遊戲夢想的夥伴。我們相信,通過本書的學習,你將能夠自信地踏入令人興奮的遊戲開發領域,用你的創意和技能,描繪齣屬於你自己的精彩像素世界。讓我們一起,在Unity的海洋中,探索無盡的可能!