Unity 3D/2D手機游戲開發:從學習到產品(第3版) Unity 3D/2D手机游戏开发:从学习到产品(第3版)
金璽曾
- 出版商: 清華大學
- 出版日期: 2017-09-01
- 定價: $588
- 售價: 8.5 折 $500
- 語言: 簡體中文
- 頁數: 444
- 裝訂: 平裝
- ISBN: 7302481652
- ISBN-13: 9787302481652
-
相關分類:
遊戲引擎 Game-engine
下單後立即進貨 (約4週~6週)
買這商品的人也買了...
-
$480$379 -
$880$695 -
$800$632 -
$1,200$948 -
$450$356 -
$296Unity 2D 遊戲開發實例教程
-
$380$300 -
$305Unity 5.x創造2D手機遊戲
-
$320$250 -
$780$616 -
$658VR/AR/MR 開發實戰 : 基於 Unity 與 UE4引擎
-
$590$460 -
$390$308 -
$590$466 -
$352Python機器學習算法
-
$352Python 與機器學習實戰:決策樹、集成學習、支持向量機與神經網絡算法詳解及編程實現
-
$650$507 -
$450$356 -
$500$390 -
$380$323 -
$347ASP.NET Core應用開發
-
$680$537 -
$650$507 -
$590$502 -
$709Unity 與 C++ 網絡遊戲開發實戰:基於 VR、AI 與分佈式架構
相關主題
商品描述
本書以實例教學為主線,循序漸進地介紹了Unity在游戲開發方面的不同功能。第1章,由零開始,引導讀者熟悉Unity編輯器的各個功能模塊和特性。第2~4章是3個不同特色的3D游戲實例,使讀者對Unity游戲開發有一個較全面的認識。第5章是一個2D游戲實例,全方位地介紹了Unity在2D游戲方面的應用。第6章和第7章,重點介紹了Unity在網絡方面的應用。第8~10章介紹瞭如何將Unity游戲移植到網頁、iOS和Android平臺。第11章詳細介紹了Unity的新GUI系統。第12章是關於創建Unity游戲美術資源的工作流程。第13章和第14章分別介紹了行為樹和Play Maker兩款插件,適合各類游戲開發者。另外,本書最後附有C#語言的快速教程,幫助缺乏程序開發基礎的讀者快速入門,同時也包括Unity編輯器菜單欄的中英文對照表供讀者查閱。
本書提供了所有實例的源代碼與素材文件,供讀者上機練習使用,讀者可從網上下載本書資源文件。
本書適用於廣大游戲開發人員、游戲開發愛好者、軟件培訓機構以及電腦專業的學生等。
海報:
作者簡介
金璽曾,資深遊戲開發工程師,擁有10餘年遊戲開發經驗,3D塔防遊戲《野人大作戰》主要開發者。曾在上海盛大網絡、上海愛客士電腦軟件有限公司任開發經理,目前在個人創業公司從事VR及遊戲開發。
目錄大綱
第1章Unity基礎1
1.1初識遊戲引擎和Unity2
1.2運行Unity3
1.2.1Unity的版本3
1.2.2下載並安裝Unity4
1.2.3在線激活Unity4
1.2.4運行示例工程4
1.3創建一個HelloWorld程序7
1.3. 1安裝VisualStudio7
1.3.2編寫腳本7
1.3.3編譯輸出9
1.4調試程序10
1.4.1顯示Log10
1.4.2在VisualStudio中設置斷點11
1.4.3在MonoDevelop中設置斷點12
1.5Unity腳本基礎12
1.5 .1Script(腳本)組件12
1.5.2腳本的執行順序12
1.5.3腳本的序列化13
1.5.4組件式的編程14
1.5.5協程編程15
1.6預置文件Prefab16
1.7實例化17
1.8讀取資源18
1.9保存工程18
1.10小結18
第2章太空射擊遊戲19
2.1遊戲介紹20
2.1.1遊戲操作20
2.1.2主角和敵人20
2.1.3遊戲UI20
2.2導入美術資源20
2.3創建場景21
2.3.1創建火星背景和星空動畫22
2.3.2設置攝像機和燈光25
2.4創建主角27
2.4.1創建腳本27
2.4.2控制飛船移動28
2.4.3創建子彈30
2.4.4創建子彈Prefab31
2.4.5發射子彈32
2.5創建敵人33
2.6物理碰撞34
2.6.1添加碰撞體34
2.6.2觸發碰撞35
2.7高級敵人38
2.7.1創建敵人38
2.7.2發射子彈39
2.8聲音與特效41
2.9敵人生成器43
2.10遊戲UI和戰鬥管理45
2.10.1創建顯示得分的UI界面45
2.10.2創建顯示遊戲失敗的UI界面46
2.10.3編寫腳本46
2.11關卡跳轉49
2.12用鼠標控制主角51
2.13精確的碰撞檢測53
2.14自動創建Prefab55
2.15發布遊戲57
2.16使用PoolBoss創建緩存池59
2.17小結62
第3章第一人稱射擊遊戲63
3.1策劃64
3.1.1遊戲介紹64
3.1.2UI界面64
3.1.3主角64
3.1.4敵人64
3.2遊戲場景64
3.3主角65
3.3.1角色控制器65
3.3.2攝像機67
3.3.3武器68
3.4敵人69
3.4.1尋路69
3.4. 2設置動畫71
3.4.3行為72
3.5UI界面76
3.6交互80
3.6.1主角的射擊80
3.6.2敵人的進攻與死亡82
3.7出生點84
3.8小地圖87
3.9小結90
第4章塔防遊戲91
4.1策劃92
4.1.1場景92
4.1.2攝像機92
4.1.3勝負判定92
4.1.4敵人92
4.1.5防守單位92
4.1.6UI界面92
4.2地圖編輯器93
4.2.1“格子”數據93
4.2 .2在Inspector窗口添加自定義
UI控件95
4.2.3創建一個自定義窗口98
4.3遊戲場景99
4.4製作UI100
4.5創建遊戲管理器103
4.6攝像機106
4.7路點109
4.8敵人113
4.9敵人生成器116
4.9.1創建敵人生成器116
4.9.2遍歷敵人118
4.10防守單位119
4.11生命條128
4.12小結130
第5章2D遊戲131
5.1Unity2D系統簡介132
5.2創建Sprite132
5.2.1使用SpriteEditor創建Sprite132
5.2.2使用SpritePacker創建Sprite134
5.2.3圖層排序135
5.2.4Sprite邊框和重複顯示136
5.3動畫製作137
5.3.1序列幀動畫137
5.3.2使用腳本實現序列幀動畫138
5.3.3骨骼動畫139
5.42D物理141
5.5捕魚游戲144
5.5.1遊戲玩法144
5.5.2準備2D資源145
5.5.3創建魚146
5.5.4創建魚群生成器148
5.5.5創建子彈和大砲150
5.5. 6物理碰撞152
5.62D材質153
5.6.1修改Sprite顏色153
5.6.2自定義的黑白效果材質153
5.7小結154
第6章與Web服務器的交互155
6.1Web服務器簡介156
6.2在Windows上安裝部署Apache156
6.2.1安裝Apache156
6.2.2Apache常用命令158
6.2.3安裝MySQL158
6.2.4安裝PHP160
6.2.5安裝Redis161
6.3PHP開發環境162
6.3.1第一個PHP程序162
6.3.2調試PHP代碼163
6.3.3PHP基本語法164
6.4WWW基本應用165
6.4.1HTTP協議166
6.4.2GET請求166
6.4.3POST請求168
6.4.4上傳下載圖片169
6.4.5下載聲音文件170
6.5分數排行榜171
6.5.1創建數據庫171
6.5.2創建PHP腳本172
6.5.3上傳下載分數174
6.5.4使用Redis緩存數據177
6.6MD5驗證179
6.7BestHTTP179
6.8Linux環境部署180
6.8.1Linux管理工具180
6.8 .2安裝Apache181
6.8.3安裝MySQL182
6.8.4安裝PHP183
6.8.5安裝Redis185
6.9小結186
第7章基於TCP/IP協議的聊天實例187
7.1TCP/IP開發簡介188
7.2一個簡單的網絡程序190
7.3網絡引擎192
7.3.1數據包193
7.3.2邏輯處理199
7.3.3網絡功能201
7.3. 4創建聊天協議208
7.4聊天客戶端208
7.5聊天服務器端211
7.6JSON.NET簡介214
7.7小結215
第8章HTML5(WebGL)遊戲移植216
8.1關於HTML5和WebGL217
8.2導出Unity遊戲到WebGL平台217
8.2.1導出WebGL遊戲217
8.2.2設置WebGL模板219
8.2.3默認的index.html219
8.2.4文件訪問220
8.3自定義Loading頁面221
8.4編寫WebGL遊戲插件224
8.4.1訪問Javascript示例一224
8.4.2訪問Javascript示例二225
8.5在網頁上保存遊戲記錄226
8.6AssetBundle227
8.6.1創建AssetBundle資源227
8.6.2下載、實例化AssetBundle 資源229
8.6.3批量創建AssetBundle230
8.7小結231
第9章iOS遊戲移植232
9.1iOS簡介233
9.2軟件安裝233
9.3申請開發權限233
9.4設置iOS開發環境233
9.5測試iOS遊戲236
9.6發布iOS遊戲237
9.7對接iOS原生語言237
9.7.1在Xcode中創建Objectiv—C 代碼237
9.7.2在Unity中引用Objectiv—C 代碼240
9.8內消費241
9.9本地存儲位置241
9.10小結241
第10章Android遊戲移植242
10.1Android簡介243
10.2安裝AndroidSDK243
10.3運行Android遊戲245
10.3.1準備一部Android手機245
10.3.2設置Android遊戲工程245
10.3.3測試Android遊戲247
10.3.4發布Android遊戲247
10.4使用AndroidStudio249
10.4.1AndroidStudio簡介250
10.4.2配置AndroidStudio250
10.4.3創建Helloworld程序251
10.5從Unity到AndroidStudio252
10.5.1創建Unity工程253
10.5.2創建AndroidStudio工程255
10.5.3查看Log256
10.5.4發布程序257
10.6使用腳本編譯遊戲258
10.6.1使用腳本導出Android工程258
10.6.2使用腳本編譯Android工程261
10.7獲得簽名證書的sha1值263
10.8導入庫文件264
10.9Plugins目錄266
10.10代碼混淆266
10.11百度地圖實例267
10.11.1導入百度地圖SDK267
10.11.2實現百度地圖控件268
10.12觸屏操作271
10.13小結276
第11章Unity新GUI完全攻略277
11.1Unity的GUI系統278
11.2Canvas(畫布)278
11.2.1創建Canvas279
11.2.2設置Canvas279
11.2.3Canvas的屏幕適應模式282
11.2.4Canvas層級內UI控件的排序282
11.2.5Canvas的隱藏和顯示283
11.2.6查找UI層級下的子控件283
11.3UI坐標對齊方式283
11.4Text(文字)284
11.5自定義字體285
11.5.1創建字體貼圖285
11.5.2創建Shader287
11.6Image(圖像)289
11.6.1創建Image控件289
11.6.2設置Alpha290
11.6.3設置RaycastTarget290
11.6.4設置UI圖像為Sliced類型291
11.6.5設置UI圖像為Tiled類型292
11.6.6設置UI圖像為Filled類型292
11.6.7Mask(蒙版)293
11.7Button(按鈕)控件294
11.7.1創建按鈕294
11.7.2設置按鈕狀態變化294
11.7.3在編輯器中設置按鈕觸發事件295
11.7.4在腳本中定義按鈕單擊事件296
11.7.5判斷按壓按鈕事件297
11.8Toggle(開關)控件297
11.8.1創建Toggle控件297
11.8.2Toggle組298
11.8.3Toggle控件的腳本299
11.9RawImage控件299
11.10Slider(滑塊)控件301
11.10.1創建Slider控件301
11.10.2改變滑塊大小301
11.10.3使用腳本控制滑塊302
11.11InputField(文本輸入)控件302
11.12ScrollView(捲軸視圖)控件303
11.13Dropdown(下拉列表)控件305
11.14實用UI功能306
11.14.1判斷是否單擊了UI306
11.14.2拖動UI控件306
11.14.3在UI前面顯示粒子特效308
11.15使用插件DOTween製作動畫309
11.15.1在編輯器中設置DOTween 動畫309
11.15.2在腳本中設置DOTween 動畫310
11.16使用插件EnhancedScroller優化捲軸視圖311
11.16.1創建數據模型312
11.16.2創建UI視圖控制腳本312
11.16.3創建控制器312
11.16.4創建捲軸視圖UI313
11.17小結315
第12章遊戲開發中的美術工作
流程316
12.1Unity和藝術家317
12.2視圖操作捕捉317
12.3光照和渲染系統318
12.3.1光源類型318
12.3.2渲染管道319
12.3.3質量設置320
12.3.4實時陰影320
12.3.5環境光322
12.3.6Fog(霧)323
12.3.7直接照明與間接照明324
12.3.8Lightmapping(光照貼圖)326
12.3.9環境反射採樣331
12.3.10光照採樣332
12.4色彩空間335
12.5物理材質337
12.6攝像機340
12.7地形342
12.8粒子特效簡單教程345
12.9物理設置簡單教程350
12.10遊戲資源352
12.10.1貼圖352
12.10.2在3dsMax中創建法線貼圖353
12.10.33dsMax靜態模型導出354
12.10.43dsMax動畫導出356
12.10.5Maya模型導出356
12.11Unity兩足動畫系統357
12.11.1修改3dsMax兩足動畫骨骼358
12.11.2導入3dsMax兩足角色到
Unity359
12.11.3導入角色動畫到Unity359
12.11.4表情動畫360
12.11 .5動畫控制器361
12.12動畫插件Skele363
12.13美術資源的優化367
12.14小結367
第13章BehaviorDesigner——
行為樹AI368
13.1行為樹和AI369
13.1.1行為樹插件的安裝369
13.1.2簡單的AI處理方式369
13.1.3狀態機AI處理方式370
13.1.4BehaviorDesigner的行為樹
AI處理方式371
13.2行為樹任務372
13.2.1任務返回值372
13.2.2Action(動作)372
13.2.3Composite(組合)372
13.2.4Conditional(條件)374
13.2.5Decorator(修飾)375
13.3行為樹實例教程375
13.3.1主角的行為樹376
13.3.2遊蕩的敵人381
13.3.3行為樹的交互382
13.4行為樹系統擴展385
13.4.1外部行為樹385
13.4.2自定義任務386
13.4.3自定義共享數據類型387
13.4 .4在腳本中設置行為樹389
13.4.5在腳本中發送事件389
13.5優化389
13.6小結390
第14章玩玩PlayMaker391
14.1關於PlayMaker392
14.1.1優點和缺點392
14.1.2安裝392
14.2PlayMaker的模塊和工作機制393
14.2.1有限狀態機393
14.2.2創建PlayMaker狀態機393
14.2.3State(狀態)394
14.2.4Event(事件)394
14.2.5Action(動作)395
14.2 .6變量396
14.2.7發送事件397
14.3自定義Action397
14.4小結400
附錄AC#語言401
A.1C#基礎402
A.1.1C#簡介402
A.1.2運行控制台程序402
A.1.3類型403
A.1.4內置類型403
A.1.5標識符404
A.1.6語句和表達式404
A.1.7變量和常量405
A.1.8枚舉405
A.1.9數學操作符405
A.1.10關係操作符406
A.1.11邏輯操作符406
A.1.12操作符優先級407
A.1.13方法407
A.1.14條件分支語句408
A.1.15循環語句409
A.1.16三元操作符410
A.1.17預處理410
A.2面向對象編程411
A. 2.1類411
A.2.2this關鍵字412
A.2.3封裝412
A.2.4繼承與多態414
A.2.5靜態成員417
A.2.6通過字段名稱序列化對象417
A.3字符串418
A.4數組和排序420
A .4.1創建數組420
A.4.2遍歷數組421
A.4.3插入、刪除、查找421
A.4.4排序422
A.5I/O操作425
A.5.1寫文件425
A.5.2讀文件426
A.5.3刪除文件427
A.5.4讀寫bytes427
A.6委託429
A.6.1委託與事件429
A.6.2泛型委託431
A.6.3Action432
A.7小結433
附錄B特殊文件夾434
附錄CUnity編輯器菜單中英文對照436