基礎信息
書名:Unity 3.x遊戲開發經典教程
書號:978-7030-368-270
作者:〔英〕Will Goldstone
出版日期:2013-5-1
原價:68
開本:16
裝幀:平裝
字數(千字數):460
出版社:科學出版社
內容簡介
本書通過從零開始創建一個完整的Unity遊戲項目,在對遊戲進行一步步創建、完善的過程中向讀者詳細介紹了如何利用地形系統刷出簡易的遊戲環境、編寫腳本控制對象的行為、利用圖形用戶界面(GUI)系統製作UI、使用物理系統模擬物理作用、添加粒子系統創建特效、運用動畫系統實現簡單的動畫,以及發布到不同平台時相關的發布設定。書中所有腳本都有JavaScript和C#兩個版本,讀者可根據需要選擇閱讀適合自己的一種。另外,書中對於每個工具的使用方法、操作小技巧都有介紹,對每個組件中各個參數的作用都有分析,還拓展了一些遊戲開發方面的知識。
作者介紹
Will Goldstone是Unity社區終身會員,兼任Unity Technologies技術支持,負責教學、市場、社區關係、幫助開發者。它擁有創新教育的文學碩士學位,以及在高等教育機構任教的經驗,憑著豐富的才學與經驗寫下了這本關於Unity的開山之作,還為此只做了相關的視頻教程。
編輯推薦
每個遊戲開發的背後都有一個像Unity這樣強大的遊戲引擎,這是一款被廣泛使用且極受歡迎的遊戲引擎。無論是業餘愛好者,還是開發遊戲及網頁、桌面、移動平台和家庭遊戲機的互動體驗的大型工作室都在使用Unity.Unity的直觀性使得其學習起來更加方便,成為一個遊戲開發者將會變得很容易。
讀者對象
本書非常適合初學者較系統地學習、熟悉、使用Unity,適合高等院
校及相關培訓機構選作遊戲開發教材。
圖書目錄
第1章 進入三維世界
1.1了解三維世界…………………………………………………………………1
坐標系…………………………………………………………………………1
本地坐標系和世界坐標系……………………………………………………2
向 量…………………………………………………………………………4
相 機…………………………………………………………………………4
多邊形、邊、頂點和格線……………………………………………………5
材質、紋理、著色器…………………………………………………………7
1.2剛體物理………………………………………………………………………7
碰撞檢測………………………………………………………………………8
1.3 Unity的幾個關鍵概念…………………………………………………………9
Unity套用舉例………………………………………………………………10
資 源………………………………………………………………………11
場 景………………………………………………………………………11
遊戲對象……………………………………………………………………11
組 件………………………………………………………………………12
腳 本………………………………………………………………………12
預 制………………………………………………………………………13
1.4界 面………………………………………………………………………13
場景視圖和格線層次面板…………………………………………………14
檢視面板……………………………………………………………………16
工程面板……………………………………………………………………17
遊戲視圖……………………………………………………………………18
1.5小 結………………………………………………………………………18
第2章 遊戲雛形和腳本基礎
2.1你的第一個Unity工程………………………………………………………21
2.2簡單的環境雛形……………………………………………………………23
設定場景……………………………………………………………………24
添加簡單的光源……………………………………………………………24
製作磚塊物體………………………………………………………………25
建立一堵牆,然後破壞它…………………………………………………29
2.3腳本入門……………………………………………………………………30
一個新的行為腳本或 “類”………………………………………………30
一個新建的C#腳本中有什麼?……………………………………………31
一個新建的JavaScript腳本中有什麼?……………………………………33
摧毀那堵牆…………………………………………………………………34
聲明公有變數………………………………………………………………35
2.4理解Translate函式………………………………………………………39
完善Translate函式………………………………………………………40
2.5測試遊戲……………………………………………………………………41
創建一個射彈………………………………………………………………42
2.6使用預製存儲信息…………………………………………………………43
發射射彈……………………………………………………………………44
2.7用Instantiate()函式生成物體…………………………………………45
為剛體添加力………………………………………………………………45
2.8小 結………………………………………………………………………47
第3章 創建環境
3.1遊戲構思……………………………………………………………………49
3.2使用地形工具………………………………………………………………51
地形工具的特點……………………………………………………………52
地形工具的功能……………………………………………………………54
創建一個小島——太陽、海和海灘………………………………………59
3.3小 結………………………………………………………………………75
第4章 角色控制器和腳本進階
4.1使用檢視面板………………………………………………………………77
標 簽………………………………………………………………………78
層……………………………………………………………………………79
預製和檢視面板……………………………………………………………80
4.2解剖角色控制器……………………………………………………………81
4.3分解第一人稱控制器………………………………………………………81
父子級關係…………………………………………………………………81
First Person Controller物體………………………………………………83
4.4腳本進階……………………………………………………………………90
命 令………………………………………………………………………91
變 量………………………………………………………………………91
4.5完整的例子…………………………………………………………………94
函 數………………………………………………………………………95
編寫自己的函式……………………………………………………………96
聲明自定義函式……………………………………………………………98
if else條件語句……………………………………………………………101
多重條件……………………………………………………………………103
4.6腳本的內部交流和點語法…………………………………………………105
訪問其他物體………………………………………………………………105
Find()和FindWithTag()命令…………………………………………………105
SendMessage()命令…………………………………………………………106
GetComponent()命令…………………………………………………………107
注 釋………………………………………………………………………110
4.7角色移動腳本………………………………………………………………110
分解腳本……………………………………………………………………111
聲明變數……………………………………………………………………111
4.8小 結………………………………………………………………………116
第5章 交 互
5.1外部建模軟體………………………………………………………………117
模型的常規設定……………………………………………………………118
網 格………………………………………………………………………118
材 質………………………………………………………………………119
動 畫………………………………………………………………………119
動畫壓縮……………………………………………………………………120
5.2設定崗哨模型………………………………………………………………120
5.3添加崗哨模型………………………………………………………………121
位 置………………………………………………………………………122
旋 轉………………………………………………………………………122
添加碰撞器…………………………………………………………………123
添加剛體……………………………………………………………………125
添加音頻……………………………………………………………………125
關閉動畫的自動播放………………………………………………………125
5.4碰撞和觸發器………………………………………………………………126
5.5光線投射……………………………………………………………………129
5.6打開崗哨模型………………………………………………………………131
方法1——碰撞檢測…………………………………………………………132
方法2——光線投射…………………………………………………………145
方法3——觸發器碰撞檢測…………………………………………………152
5.7小 結………………………………………………………………………156
第6章 收集、物品欄和HUD
6.1製作能量源預製……………………………………………………………159
下載、導入和放置…………………………………………………………159
為能量源添加標籤…………………………………………………………160
碰撞器的大小和旋轉………………………………………………………160
添加剛體……………………………………………………………………161
創建能量源腳本……………………………………………………………162
添加觸發器碰撞檢測………………………………………………………163
保存為預製…………………………………………………………………165
6.2放置能量源…………………………………………………………………165
6.3編寫玩家Inventory腳本………………………………………………………166
保存充電狀態………………………………………………………………166
添加CellPickup()函式…………………………………………………168
6.4限制崗哨的進入……………………………………………………………169
用能量源的計數器限制進門………………………………………………170
6.5顯示能量源HUD……………………………………………………………170
GUI紋理的導入設定…………………………………………………………171
創建GUITexture物體…………………………………………………………171
放置PowerGUI紋理…………………………………………………………172
編寫腳本轉換紋理…………………………………………………………173
理解數組……………………………………………………………………173
解鎖門………………………………………………………………………182
6.6為玩家提供提示……………………………………………………………185
使用GUIText在螢幕上顯示信息……………………………………………186
6.7小 結………………………………………………………………………192
第7章 實例化和剛體
7.1使用Instantiation()命令……………………………………………194
7.2剛 體………………………………………………………………………195
力……………………………………………………………………………195
剛體組件……………………………………………………………………195
7.3創建迷你遊戲………………………………………………………………196
創建椰子預製………………………………………………………………197
創建Launcher物體……………………………………………………………198
使用腳本發射椰子…………………………………………………………201
最後的檢查…………………………………………………………………209
限制實例數量,移除物體…………………………………………………211
添加小屋……………………………………………………………………214
贏得勝利……………………………………………………………………228
打磨遊戲……………………………………………………………………234
7.4小 結 ……………………………………………………………………237
第8章 粒子系統
8.1什麼是粒子系統?…………………………………………………………239
粒子發射器…………………………………………………………………239
粒子動畫器…………………………………………………………………240
粒子渲染器…………………………………………………………………240
8.2製作任務……………………………………………………………………241
需要的資源…………………………………………………………………242
添加木條……………………………………………………………………242
創建篝火粒子系統…………………………………………………………244
點燃篝火……………………………………………………………………253
8.3測試遊戲……………………………………………………………………263
究竟還有什麼問題呢?……………………………………………………264
8.4小 結………………………………………………………………………265
第9章 製作選單
9.1界面和選單…………………………………………………………………268
創建場景……………………………………………………………………269
9.2使用GUITexture和滑鼠事件創建選單………………………………………273
添加Play按鈕………………………………………………………………274
GUITexture按鈕的腳本………………………………………………………274
載入場景……………………………………………………………………276
為公有變數賦值……………………………………………………………277
測試按鈕……………………………………………………………………278
添加嚮導按鈕………………………………………………………………279
添加退出按鈕………………………………………………………………279
使用Debug命令檢測腳本……………………………………………………283
9.3使用Unity GUI類和GUI皮膚製作選單……………………………………284
關閉遊戲物體………………………………………………………………284
創建選單……………………………………………………………………284
9.4小 結………………………………………………………………………307
第10章 動畫基礎
10.1慶祝信息……………………………………………………………………309
製作慶祝信息的步驟………………………………………………………310
觸發勝利……………………………………………………………………311
創建慶祝信息文本…………………………………………………………312
使用線性插值(Lerp)……………………………………………………313
創建win物體…………………………………………………………………316
創建Fader物體並使用動畫面板……………………………………………318
載入慶祝信息………………………………………………………………328
放置GUITexture……………………………………………………………330
挑戰——小島場景的淡入淡出……………………………………………330
10.2小 結………………………………………………………………………330
第11章 遊戲完善和最後的調整
11.1調整地形和玩家的初始位置………………………………………………331
調整地形……………………………………………………………………332
創建道路……………………………………………………………………334
11.2設定玩家的初始位置………………………………………………………335
11.3最佳化遊戲性能………………………………………………………………336
相機剪裁面和霧……………………………………………………………336
光照貼圖……………………………………………………………………337
光源和烘焙…………………………………………………………………337
烘焙光照貼圖………………………………………………………………342
11.4最後的調整…………………………………………………………………346
火 山………………………………………………………………………346
椰子的拖痕…………………………………………………………………351
11.5小 結………………………………………………………………………354
第12章 發布與分享
12.1發布選項……………………………………………………………………356
網路播放器版………………………………………………………………356
PC或Mac單機版……………………………………………………………357
OSX Dashboard Widget………………………………………………………358
12.2發布設定……………………………………………………………………358
12.3播放器設定…………………………………………………………………359
跨平台設定…………………………………………………………………359
各平台設定 …………………………………………………………………360
12.4質量設定……………………………………………………………………363
12.5玩家輸入設定………………………………………………………………365
12.6發布遊戲……………………………………………………………………366
發布網路播放器版…………………………………………………………366
第一次發布…………………………………………………………………373
發布網路播放器版執行檔……………………………………………374
12.7分享你的作品………………………………………………………………379
12.8小 結………………………………………………………………………380
第13章 測試和進一步學習
13.1在實踐中學習………………………………………………………………382
13.2測試並完成遊戲……………………………………………………………382
公 測………………………………………………………………………382
13.3學習方法……………………………………………………………………386
覆蓋儘可能多的基礎內容…………………………………………………386
利用現有資源………………………………………………………………386
遇到問題儘管問!…………………………………………………………387
13.4小 結………………………………………………………………………388