游戲開發(fā)實戰(zhàn)教程(Unity+C#)
定 價:59.8 元
- 作者:李滿 鐘百勝
- 出版時間:2021/8/1
- ISBN:9787115560209
- 出 版 社:人民郵電出版社
- 中圖法分類:TP317.6
- 頁碼:272
- 紙張:
- 版次:01
- 開本:16開
本書以游戲開發(fā)案例為主線,把C#語言和游戲開發(fā)引擎相結(jié)合,系統(tǒng)講解C#語言、Unity游戲引擎及C#語言在游戲開發(fā)中的應(yīng)用。本書分為兩篇。第一篇全面系統(tǒng)地講解Visual Studio 2019開發(fā)環(huán)境下C#程序設(shè)計的基礎(chǔ)知識,內(nèi)容包括C#程序設(shè)計基礎(chǔ),數(shù)據(jù)類型,流程控制,類與對象,接口、委托與事件,目錄與文件管理、WinForm應(yīng)用程序開發(fā);第二篇講解C#在Unity游戲開發(fā)引擎中的應(yīng)用,包括認(rèn)識Unity游戲引擎、C#腳本語言、交互和物理引擎、動畫與UGUI、Unity游戲開發(fā)綜合案例等。本書內(nèi)容與實例緊密結(jié)合,便于讀者在應(yīng)用中理解知識,達(dá)到學(xué)以致用的目的。本書提供完整的課程資源包,包括案例源代碼、課件PPT、實驗手冊、教學(xué)視頻等。
教育部產(chǎn)學(xué)合作協(xié)同育人項目的成果。
學(xué)校和企業(yè)合作編寫的教材。
采用主流的Unity游戲引擎,從實際出發(fā),以游戲開發(fā)案例為引導(dǎo)講解C#語言。
理論與實踐應(yīng)用相結(jié)合,由易到難,針對性強。
李滿,2007年至今,廣州工商學(xué)院計算機科學(xué)與工程系教學(xué)副主任。在校工作期間發(fā)表論文11篇,完成市級教科研項目4項,校級教科研項目多項,主編出版教材10本。其中《計算機應(yīng)用基礎(chǔ)實驗教程(Windows XP+Office 2003)》獲山東省第二屆高校優(yōu)秀教材評比一等獎,《計算機應(yīng)用基礎(chǔ)(Windows XP+Office 2003)(第2版)》獲教指委優(yōu)秀教材,《Photoshop經(jīng)典案例教程》獲山東省科研成果三等獎。
第 一篇 C#程序編程語言
第 1章 C#程序設(shè)計基礎(chǔ) 2
1.1 C#語言概述 2
1.1.1 .NET概述 2
1.1.2 .NET Framework 2
1.1.3 C#語言 3
1.1.4 編譯與運行C#應(yīng)用程序 3
1.1.5 Visual Studio 2019 簡介 4
1.1.6 Visual Studio 2019 系統(tǒng)要求 6
1.2 實驗一 編寫第 一個C#程序 7
1.3 C#程序的基本結(jié)構(gòu) 11
1.3.1 程序結(jié)構(gòu) 11
1.3.2 代碼編寫 13
1.3.3編譯與運行 14
1.4 實驗二 簡易輸出游戲信息 14
1.5 實驗三 打印輸出坦克模型 16
本章小結(jié) 17
習(xí)題 17
第 2章 數(shù)據(jù)類型 18
2.1 基本數(shù)據(jù)類型 18
2.1.1 值類型 18
2.1.2 引用類型 23
2.1.3指針類型 24
2.2 變量與常量 24
2.2.1 變量 24
2.2.2 常量 25
2.3 運算符與表達(dá)式 27
2.3.1 運算符及其分類 27
2.3.2算術(shù)運算符 27
2.3.3 賦值運算符 29
2.3.4 位運算符 29
2.3.5 關(guān)系運算符 30
2.3.6 邏輯運算符 30
2.3.7 混合運算優(yōu)先級 31
2.4數(shù)據(jù)類型轉(zhuǎn)換 32
2.4.1 隱式轉(zhuǎn)換 32
2.4.2顯式轉(zhuǎn)換 33
2.5 數(shù)組 34
2.5.1 數(shù)組的定義 35
2.5.2 數(shù)組的初始化 35
2.5.3 數(shù)組的應(yīng)用 36
2.6 字符串 39
2.6.1 刪除字符串空格 40
2.6.2 字符串英文字母大小寫轉(zhuǎn)換方法 41
2.6.3 判斷子字符串是否出現(xiàn)在字符串的開頭或結(jié)尾 42
2.6.4 比較字符串 43
2.6.5插入或刪除字符串 44
2.7實驗一 數(shù)字加密游戲設(shè)計 45
2.8 實驗二 推箱子游戲設(shè)計 46
本章小結(jié) 53
習(xí)題 53
第3章 流程控制 55
3.1 流程控制的基礎(chǔ)知識 55
3.1.1 程序基本結(jié)構(gòu) 55
3.1.2 條件控制語句 56
3.1.3 循環(huán)控制語句 56
3.1.4 跳轉(zhuǎn)控制語句 56
3.2 條件語句實操 57
3.2.1 if語句 57
3.2.2 if語句的嵌套 60
3.2.3 switch語句 62
3.3 循環(huán)語句 63
3.3.1 while當(dāng)型循環(huán)語句 63
3.3.2 do…while直到型循環(huán) 64
3.3.3 for循環(huán)語句 66
3.3.4 三種循環(huán)語句的比較 67
3.4 跳轉(zhuǎn)語句實操 67
3.4.1 break語句 67
3.4.2 continue語句 68
3.4.3 goto語句 69
3.5 實驗一 彩虹圓餅繪制 70
3.6 實驗二 簡單客車售票系統(tǒng) 72
本章小結(jié) 74
習(xí)題 74
第4章 類與對象 77
4.1類與對象 77
4.1.1 類與對象概述 77
4.1.2類、方法和變量 78
4.1.3 對象的創(chuàng)建及使用 79
4.2 方法與屬性 81
4.2.1 方法的定義 81
4.2.2 方法調(diào)用 82
4.2.3方法中的參數(shù)傳遞 84
4.2.4 方法重載 88
4.3 構(gòu)造函數(shù)和析構(gòu)函數(shù) 89
4.2.1 構(gòu)造函數(shù) 89
4.2.2析構(gòu)函數(shù) 93
4.4 封裝性 93
4.4.1封裝概述 93
4.4.2 屬性 94
4.4.3 索引器 96
4.5 類的繼承 98
4.5.1繼承概述 98
4.5.2 Base的使用 100
4.6多態(tài) 102
4.6.1 多態(tài)概述 102
4.6.2 實現(xiàn)多態(tài)方式 102
4.6.2 虛方法與重寫 102
4.6.3 抽象類與抽象方法 105
4.7實驗一 簡易猜拳游戲 107
4.8 實驗二 系統(tǒng)登錄用戶類的編寫 111
本章小結(jié) 112
習(xí)題 113
第5章 接口、委托與事件 114
5.1接口 114
5.1.1 接口的概念 114
5.1.2 接口的聲明 114
5.1.3 接口的應(yīng)用 115
5.2委托 117
5.2.1 委托的定義 117
5.2.2 委托的聲明 118
5.2.3 委托的應(yīng)用 118
5.2.4 匿名方法 122
5.3事件 123
5.3.1 事件的定義 123
5.3.2 事件的使用 124
5.4 實驗 委托、事件與繼承 126
本章小結(jié) 144
習(xí)題 144
第6章 目錄與文件管理 147
6.1 System.IO命名空間 147
6.2目錄管理 148
6.2.1目錄的創(chuàng)建、刪除與移動 149
6.2.2 FolderBrowserDialog控件 154
6.3文件管理 155
6.3.1文件復(fù)制、刪除與移動 156
6.3.2文件屬性與設(shè)置 158
6.4文件的讀寫 160
6.4.1文件和流 160
6.4.2文件的打開 160
6.4.3文本文件的讀寫 160
6.4.4二進(jìn)制文件的讀寫 162
6.5 實驗 貪吃蛇 163
本章小結(jié) 165
習(xí)題 166
第7章 WinForm應(yīng)用程序開發(fā) 167
7.1窗體編程基礎(chǔ) 167
7.1.1創(chuàng)建Windows窗體 167
7.1.2窗體的基本操作 170
7.1.3 控件的常用屬性、方法和事件 173
7.1.4 Button控件 176
7.1.5 Label與LinkLabel控件 177
7.1.6 TextBox控件 178
7.1.7 PictureBox控件 179
7.1.8 Timer控件 179
7.1.9 容器類控件 179
7.1.10 RadioButton控件 180
7.1.11 CheckBox控件 181
7.1.11 MenuStrip控件 182
7.1.12 對話框設(shè)計 185
7.2 實驗 游戲登錄與注冊設(shè)計 188
7.3 擴展實驗 簡易計算器的設(shè)計 193
本章小結(jié) 196
習(xí)題 196
第二篇 C#腳本在Unity 3D游戲引擎中的應(yīng)用
第8章 認(rèn)識Unity 3D游戲引擎 199
8.1 Unity 3D簡介 199
8.1.1 Unity概述 199
8.1.2 Unity的發(fā)展歷程 199
8.1.3 Unity的版本 200
8.2 Unity 的組成 201
8.3 Unity 的基本功能 201
8.3.1 Unity引擎自身的基本功能 201
8.3.2 Unity引擎編輯器的基本功能 201
8.4 實驗 下載、安裝與激活Unity 3D 202
8.5 運行Unity 3D 208
8.5.1 創(chuàng)建工程文件 208
8.5.2 Unity編輯器 210
8.5.3 Unity編輯器窗口布局 213
8.5.4工程存儲 214
8.6 工具欄 216
8.6.1 轉(zhuǎn)換工具 216
8.6.2 轉(zhuǎn)換輔助工具 216
8.6.3 播放控制工具 217
8.6.4 其他輔助工具 217
本章小結(jié) 217
習(xí)題 217
第9章 C#腳本語言 218
9.1 創(chuàng)建腳本 218
9.1.1 什么是腳本語言 218
9.1.2 C#腳本語言與C#語言的區(qū)別和聯(lián)系 218
9.1.3 C#腳本文件 219
9.1.4 創(chuàng)建C#腳本文件的方法 219
9.2 腳本編輯器 219
9.3 常見事件 220
9.3.1 默認(rèn)事件 220
9.3.2其他常用事件 221
9.4 實驗一 創(chuàng)建一個Hello World 程序 221
9.5 常用組件 227
9.5.1 訪問綁定對象的組件 227
9.5.2 訪問外部對象的組件 228
9.5.3 Transform組件 229
9.6 Time類 230
9.7 協(xié)程 232
9.8 實驗二 用C#腳本語言編寫小游戲 233
本章小結(jié) 235
習(xí)題 235
第 10章 交互和物理引擎 236
10.1 Input輸入管理 236
10.1.1 獲取鍵盤輸入 236
10.1.2獲取鼠標(biāo)輸入 238
10.1.3 GetAxis()方法 239
10.2 實驗一 使用鼠標(biāo)和鍵盤控制游戲?qū)ο蟮囊苿印?40
10.3 實驗二 用鍵盤和鼠標(biāo)控制棋子運動 242
10.4 剛體與常用方法 246
10.4.1 AddForce()方法 246
10.4.2 AddRelativeForce()方法 247
10.4.3 FixedUpdate()方法 248
10.5 綜合實驗:打磚塊游戲 248
本章小結(jié) 252
習(xí)題 252
第 11章 動畫與UGUI 253
11.1 Animation 253
11.2 Animator 254
11.2.1 Animator組件 254
11.2.2 Animator Controller 255
11.2.3動畫狀態(tài)機 255
11.2.4 動畫過渡 255
11.3 UGUI 258
11.3.1 Sprite 258
11.3.2 Canvas 259
11.3.3 Image和Raw Image 259
11.3.4 Panel 260
11.3.5 Text 260
11.3.6 Button 261
11.3.7 Toggle 262
11.3.8 Slider和ScrollBar 263
本章小結(jié) 263
習(xí)題 264
第 12章 Unity游戲開發(fā)綜合案例 265
12.1 貪吃蛇游戲開發(fā) 265
12.1.1 游戲場景搭建 265
12.1.2 游戲主體控制 266
12.1.3 攝像機跟隨 269
12.1.4 控制蛇吃食物 270
12.1.5 控制蛇身體變化 272
12.2 添加其他元素 273
12.2.1 顯示積分 273
12.2.2 添加音效 275
12.3 發(fā)布游戲 277
12.3.1 應(yīng)用程序打包 277
12.3.2 發(fā)布到Android平臺 278
12.4 游戲場景的修飾 279
12.4.1 Logo動畫制作 279
12.4.2 MainScene制作 281
12.4.3 場景加載 284
本章小結(jié) 289
習(xí)題 289
第 13章 Unity游戲開發(fā)中常見的設(shè)計模式 290
13.1單例模式 290
13.2觀察者模式 293
13.2.1觀察者模式中的角色 293
13.2.2觀察者模式的優(yōu)缺點 293
本章小結(jié) 295
習(xí)題 295
參考文獻(xiàn) 296