Unity 5.X從入門到精通

Unity 5.X從入門到精通
定價:948
NT $ 825
  • 作者:UNITYTECHNOLOGIES(主編)
  • 出版社:中國鐵道出版社
  • 出版日期:2016-01-01
  • 語言:簡體中文
  • ISBN10:7113210473
  • ISBN13:9787113210472
  • 裝訂:708頁 / 普通級 / 1-1
 

內容簡介

本書基於Unity5.0軟件及以上版本,對Unity5中的大量圖形改進和擴展的編輯器功能集進行講解。另外,對Unity Cloud Build的使用進行詳細介紹,使開發者通過雲進行游戲和應用開發。

為了使Unity3D在中國得到更好的發展,作為官方僅有的的配備用書,本書對原先的4.X進行完美升級。Unity5引擎支持包括MacOSX、安卓、iOS、Windows等在內的23個平台發布。目前,利用Unity游戲引擎開發的游戲終端有手機、平板和台式機等。有多所高校購買了Unity軟件,並在高校的課程中開始講授。

本書適用於對Unity感興趣的讀者使用,也可作為從事Unity3D工作的工作人員的參考書,更適用於Unity培訓的學校或者機構使用。
 

目錄

初 識 篇

第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
24.2.1 編輯器腳本介紹 633
24.2.2 創建編輯器窗口 633
24.2.3 自定義Inspector視圖 636
24.2.4 自定義場景視圖 638
24.2.5 第三方編輯器插件 639
第 25 章 腳本調試與優化 641
25.1 腳本調試 642
25.2 Profiler 646
25.2.1 Profiler的使用 646
25.2.2 iOS設備啟用遠程分析 657
25.2.3 Android設備啟用遠程分析 658
25.3 Log Files 659
25.4 優化建議 660
25.4.1 各個平台通用的優化方案 660
25.4.2 移動設備的優化 661
第 26 章 跨平台發布 663
26.1 發布到網頁平台 664
26.1.1 將項目發布到Web 664
26.1.2 自定義Unity Web Player的屏幕
加載 672
26.1.3 自定義Unity Web Player
的行為 674
26.1.4 JavaScript與Unity的通信 675
26.1.5 使用Webplayer模板 676
26.2 發布到Android平台 682
26.2.1 Java SDK的環境配置 682
26.2.2 Android SDK的安裝
與項目發布 683
26.3 iOS平台的發布 690
26.3.1 發布前的准備工作 690
26.3.2 發布iOS平台的設置 692
26.3.3 項目工程輸出與發布 699
26.4 WebGL平台的發布 699
26.5 Unity Cloud Build 703
 

時下,中國游戲產業正呈現出一片欣欣向榮的繁榮景象。截至2015年上半年,中國游戲市場實際銷售收入達到605.1億元人民幣,同比增長21.9%。然而,隨着游戲版本不斷推陳出新,當下越來越多的游戲已經無法滿足廣大消費者的需求。玩家更青睞於畫面精良,玩法新穎,安裝包小巧,游戲加載快的高品質游戲。

另外,移動平台游戲的潛力仍在持續發展。據統計,僅2015年上半年,中國移動游戲市場實際銷售收入就高達209.3億元人民幣,同比增長67.2%,占游戲總銷售收入的34.6%。移動游戲儼然成為當下游戲市場的一支生力軍。在這種大環境下,更多個人開發者開始成立游戲工作室獨立制作游戲,大型游戲公司則需要通過快速開發與更新自身的游戲產品,使自己立於不敗之地。

當然,我們同樣不能忽略VR產業的崛起。伴隨着Oculus和Morpheus(現更名為:PlayStationVR)等一系列虛擬現實設備的發展,用戶可以最為真實的體驗到3D虛擬環境。而像GoogleCardBoard和三星GearVR等「MobileVR」設備的出現,則使得消費者能以非常少的花銷通過手機來體驗VR世界。作為全球第一個支持虛擬現實設備的交互式引擎,大批開發者被其吸引,投身VR項目產品的研發之中。預計到2017年,將會有超過1300萬台的VR硬件產出,2020年更會超出5000萬台,總市值高達30億美元。

面對這樣的局面,對於廣大開發者既是一次機遇,也是一次挑戰。如何快速高效的開發出成熟穩定的商業項目,以滿足用戶高標准的需求,已成為開發商們必須面對的重要課題。

Unity引擎便是在這樣的背景下被廣大中國開發者熟知。Unity是由UnityTechnologies公司開發的專業虛擬交互式引擎。在全球范圍內,Unity占據全功能游戲引擎市場45%的份額,居全球首位。Unity引擎制作的游戲吸引了全球6億多游戲玩家的使用。用Unity創作的應用和游戲目前安裝量高達250億余個。

相比於其他引擎,Unity最大的特點便是其多平台開發。在5.2最新版本引擎中,現已支持包括Windows、MacOSX、iOS、Android、PlayStation3、PlayStation4、PlayStationVita、Xbox360、XboxONE、WiiU,WindowsStore、WindowsPhone、OculusRift、GearVR、WebGL和WebPalyer等在內的23個平台,用戶只需進行一次開發,便可以發布至以上所提到的主流平台中。

Unity引擎不僅支持C#、JavaScript兩種腳本語言,同時還支持幾乎所有美術資源文件格式。特別需要指出的是,Unity引擎還提供了一個網上資源商店(Asset Store),用戶可以在這個平台上購買和銷售包括3D模型、材質貼圖、腳本代碼、音效和UI界面擴展插件等Unity相關資源。通過Unity引擎,開發者可以在短時間內制作出一款高質量的商業項目。也可以通過Asset Store銷售自己制作的產品,獲得利潤。

更為難能可貴的是,Unity同時擁有一個資源分享與知識問答的交流平台,包括論壇、博客、在線視頻等,以此幫助開發者更為便捷的了解Unity引擎。

伴隨着Unity5的正式發布,Unity這款虛擬交互式引擎工具也進入新的發展階段。眾多全新功能為用戶提供更為簡潔高效的用戶體驗。全局光照和標准材質等工具將為您呈現更為真實的AAA影像效果,全新的物理系統則使物理檢測變得更加快速高效。像Unity Cloud和Unity Analytics等線上服務的出現,使用戶可以在更短的時間內開發游戲,快速獲得游戲上線后的相關信息,從而通過多種方式產生盈利。在Unity5.1版本引擎中所添加的與VR相關的功能和API更是廣大開發者所期待的更新內容。

這些新功能的使用方法都將在本書中向讀者進行詳細介紹。
截至2015年,Unity已經擁有超過450萬注冊開發者,中國開發者數量占全球開發者數量的1/3,位居世界第一。那麼,應該如何學好Unity引擎呢?目前,Unity雖然有大量的英文技術資料,但中文資料相對匱乏,這往往令一些初學者望而卻步,而具有一定基礎的用戶則希望在短時間內掌握新的版本引擎,本書的面世在一定程度上解決了這一問題,方便開發者提高對Unity引擎的實際應用能力。

本書共分三篇。初識篇(第1~4章),向讀者介紹Unity的發展歷程,還原最為真實的Unity引擎。操作篇(第5~17章),從初學者的角度來講解Unity引擎的相關知識,通過多個操作案例幫助入門者快速掌握Unity引擎的各個知識點,即使是毫無編程經驗的人員,也可以快速掌握Unity引擎的開發技巧。開發篇(第18~26章)為想深入了解Unity引擎開發知識以及正從事游戲開發的人員提供了寶貴的技術資料。

為了方便更多的Unity的中國用戶,Unity問答社區即將與中國的廣大粉絲見面。問答社區現已聚集了眾多資深的Unity工程師,開發者們可以根據自己感興趣的話題在問答社區中進行分享與討論。

最后,希望本書可以為您在Unity的學習上保駕護航,也祝願中國的Unity開發者可以帶來更多的精彩作品。

Unity大中華區總經理 唐嘉隆
網路書店 類別 折扣 價格
  1. 新書
    87
    $825