虛擬現實程序設計 (C#版)
範麗亞 謝平 吳妍萍 馬介淵 張克發 張榮
買這商品的人也買了...
-
$356Unity MOBA 多人競技手游製作教程
-
$303Unity AR 增強現實開發實戰
-
$599$569 -
$403Unity3D 平臺 AR 開發快速上手:基於 EasyAR 4.0
-
$352虛擬現實開發基礎
-
$250$213 -
$450$315 -
$356Unity 腳本語言基礎 (基於 C#)(微課版)
-
$485VR/AR 應用開發 (Unity 3D)
-
$588$559 -
$648$616 -
$419$398 -
$419$398 -
$607新印象:Unity游戲開發實例教程
-
$407Unreal Engine 5 建模與渲染實戰 (微課版)
商品描述
"本書融合了“C# 程序設計基礎”+“Unity 項目實戰”,給沒有C# 程序設計基礎和Unity 項目開發經驗,但又希望能快速上手開發出自己第一個作品的讀者,帶來一次友好的虛擬現實程序設計學習體驗。全書共分3 篇11 章:第1~3 章為第1 篇,是開發環境的準備,帶領讀者一步步創建自己的第1 個Untiy項目;第4~8 章為第2 篇,是虛擬現實程序設計基礎,以“基礎知識講解+ 項目實戰”形式循序漸進地學習C# 基礎概念、字符串與正則表達式、委托和事件、集合與泛型、常用接口等核心內容;第9~11 章為第3 篇,是虛擬現實程序設計進階,包括數據結構基礎、算法基礎、異常處理和調試等內容,為學有餘力的讀者提供進階學習和提升的內容。 本書內容循序漸進、深入淺出,案例開發一步一圖、條理清晰、圖文並茂、易於上手;每章知識點配有相應的習題以鞏固所學。本書適合作為高等院校虛擬現實、電腦科學與技術、軟件工程、動漫設計、數字媒體等專業教材。對於欲從事虛擬現實技術開發工作的人員,也可以使用本書快速入門和上手,零基礎輕松跨入虛擬現實開發領域。 本書封面貼有清華大學出版社防偽標簽,無標簽者不得銷售。"
目錄大綱
目錄
第1 篇 開發環境的準備
第1 章 安裝Unity Hub 與Unity 編輯器....................................... 3
1.1 註冊賬號與激活許可證 ................................................................................... 3
1.1.1 註冊Unity 賬號 ................................................................................... 3
1.1.2 激活許可證 .......................................................................................... 4
1.2 Unity Hub 的安裝與登錄 ................................................................................. 6
1.2.1 Unity Hub 的下載與安裝 ..................................................................... 6
1.2.2 Unity Hub 的登錄與管理 ..................................................................... 7
1.3 Unity 編輯器的下載與安裝 .............................................................................. 8
1.3.1 Unity 編輯器偏好設置 ......................................................................... 8
1.3.2 Unity 編輯器的下載 ............................................................................. 9
1.3.3 Unity 編輯器的安裝 ........................................................................... 10
1.3.4 Unity 編輯器的版本管理 .................................................................... 11
習題 ....................................................................................................................... 12
第2 章 Unity 編輯器的窗口佈局和常用視圖 .............................. 14
2.1 Unity 編輯器的窗口佈局 ............................................................................... 14
2.1.1 新建項目 ........................................................................................... 14
2.1.2 默認窗口佈局 .................................................................................... 14
2.1.3 自定義窗口佈局 ................................................................................ 15
2.2 常用窗口與視圖 ............................................................................................ 18
2.2.1 Hierarchy 窗口 .................................................................................. 18
2.2.2 Scene 視圖 ....................................................................................... 18
2.2.3 Project 窗口 ...................................................................................... 21
2.2.4 Inspector 窗口 .................................................................................. 21
目 錄
虛擬現實程序設計(C# 版)
IV
2.2.5 Game 視圖 ........................................................................................ 22
2.2.6 Console 窗口 .................................................................................... 22
習題 ....................................................................................................................... 22
第3 章 創建第1 個Unity 項目 .................................................. 25
3.1 新建Unity 項目 ............................................................................................. 25
3.1.1 新建3D 項目 ..................................................................................... 25
3.1.2 設置Unity 編輯器外觀偏好 ............................................................... 26
3.2 設置背景參數 ................................................................................................ 27
3.2.1 修改場景名稱 .................................................................................... 27
3.2.2 設置背景顏色 .................................................................................... 28
3.3 設置游戲背景 ................................................................................................ 28
3.3.1 添加游戲背景 .................................................................................... 28
3.3.2 添加材質球 ........................................................................................ 30
3.3.3 調整背景位置參數 ............................................................................. 35
3.4 UI 設計 .......................................................................................................... 36
3.4.1 添加游戲倒計時提示 ......................................................................... 36
3.4.2 添加游戲難度等級提示 ...................................................................... 38
3.4.3 添加計時器和積分提示 ...................................................................... 40
3.4.4 游戲暫停按鈕 .................................................................................... 42
3.4.5 重新開始游戲提示 ............................................................................. 43
3.5 資源包的使用 ................................................................................................ 45
習題 ....................................................................................................................... 45
第2 篇 虛擬現實程序設計基礎
第4 章 C# 基礎概念 .................................................................. 49
4.1 命名空間與程序入口 ..................................................................................... 49
4.1.1 命名空間 ........................................................................................... 49
4.1.2 Main( ) 方法 ....................................................................................... 54
4.1.3 訪問修飾符 ........................................................................................ 57
4.2 屬性 .............................................................................................................. 58
V
目 錄
4.2.1 屬性的概念 ........................................................................................ 58
4.2.2 屬性的使用 ........................................................................................ 58
4.2.3 屬性與常量 ........................................................................................ 61
4.2.4 屬性的實戰演練 ................................................................................ 64
4.3 方法 .............................................................................................................. 67
4.3.1 方法的聲明 ........................................................................................ 67
4.3.2 方法的調用 ........................................................................................ 68
4.3.3 方法的返回值 .................................................................................... 68
4.3.4 方法的參數類型 ................................................................................ 68
4.3.5 方法的種類 ........................................................................................ 72
4.3.6 方法的實戰演練 ................................................................................ 75
4.4 結構 .............................................................................................................. 77
4.4.1 結構概述 ........................................................................................... 77
4.4.2 結構的使用 ........................................................................................ 78
4.4.3 結構的實戰演練 ................................................................................ 79
4.5 類 .................................................................................................................. 82
4.5.1 類的概念 ........................................................................................... 82
4.5.2 類的聲明 ........................................................................................... 86
4.5.3 常見的關鍵字 .................................................................................... 88
4.5.4 嵌套類 ............................................................................................... 91
4.5.5 類的實戰演練 .................................................................................... 92
4.6 對象 .............................................................................................................. 95
4.6.1 對象的概念 ........................................................................................ 95
4.6.2 對象的創建和使用 ............................................................................. 97
4.6.3 this 關鍵字 ........................................................................................ 99
4.6.4 構造函數與析構函數 ....................................................................... 100
4.6.5 對象的封裝 ...................................................................................... 103
4.6.6 類與對象關系 .................................................................................. 106
4.7 綜合項目實戰1——游戲準備倒計時 .......................................................... 106
4.7.1 新建腳本文件 .................................................................................. 106
4.7.2 編輯腳本文件 .................................................................................. 108
4.7.3 掛載腳本文件 .................................................................................. 109
習題 ..................................................................................................................... 110
虛擬現實程序設計(C# 版)
VI
第5 章 字符串與正則表達式 ................................................... 116
5.1 字符串 ......................................................................................................... 116
5.1.1 字符串的創建 .................................................................................. 116
5.1.2 比較字符串 ...................................................................................... 118
5.1.3 包含字符串 ...................................................................................... 118
5.1.4 獲取子字符串 .................................................................................. 119
5.1.5 連接字符串 ...................................................................................... 120
5.1.6 字符串實戰演練 .............................................................................. 121
5.2 正則表達式 ................................................................................................. 122
5.2.1 字符類元字符 .................................................................................. 123
5.2.2 轉義字符 ......................................................................................... 123
5.2.3 定位符 ............................................................................................. 124
5.2.4 量詞 ................................................................................................ 124
5.2.5 分組和捕獲字符 .............................................................................. 124
5.2.6 零寬斷言 ......................................................................................... 125
5.2.7 正則表達式實戰演練1——匹配特定單詞 ....................................... 127
5.2.8 正則表達式實戰演練2——驗證手機號碼 ....................................... 128
5.2.9 正則表達式實戰演練3——驗證郵箱地址 ....................................... 129
5.3 綜合項目實戰2——計時器 ......................................................................... 131
5.3.1 創建腳本文件 .................................................................................. 131
5.3.2 掛載腳本文件 .................................................................................. 133
5.4 綜合項目實戰3——GUI 標簽控制 .............................................................. 134
5.4.1 創建腳本文件 .................................................................................. 134
5.4.2 掛載腳本文件 .................................................................................. 135
習題 ..................................................................................................................... 136
第6 章 委托和事件 .................................................................. 139
6.1 委托的聲明 ................................................................................................. 139
6.1.1 委托的概念 ...................................................................................... 139
6.1.2 委托的聲明結構 .............................................................................. 139
6.2 委托的實例化 .............................................................................................. 140
6.2.1 常規實例化委托 .............................................................................. 140
VII
目 錄
6.2.2 匿名方法實例化委托 ....................................................................... 140
6.2.3 使用Lambda 表達式實例化委托 .................................................... 141
6.3 委托的調用 ................................................................................................. 142
6.4 單播委托和多播委托 ................................................................................... 144
6.4.1 單播委托 ......................................................................................... 144
6.4.2 多播委托 ......................................................................................... 145
6.5 事件 ............................................................................................................ 147
6.6 委托實戰演練 .............................................................................................. 148
6.7 綜合項目實戰4——水果發射器 .................................................................. 149
6.7.1 製作預制體 ...................................................................................... 149
6.7.2 製作水果發射器 .............................................................................. 150
6.8 綜合項目實戰5——切割軌跡 ..................................................................... 155
6.8.1 添加運動軌跡組件 ........................................................................... 155
6.8.2 創建腳本文件 .................................................................................. 156
6.8.3 編輯腳本文件 .................................................................................. 156
6.8.4 掛載腳本文件 .................................................................................. 161
習題 ..................................................................................................................... 162
第7 章 集合與泛型 .................................................................. 164
7.1 集合概述 ..................................................................................................... 164
7.2 非泛型集合 ................................................................................................. 164
7.2.1 ArrayList 集合 ................................................................................. 165
7.2.2 Hashtable 集合 ............................................................................... 165
7.3 泛型集合 ..................................................................................................... 165
7.3.1 List<T> 泛型集合 ............................................................................ 166
7.3.2 Dictionary<TKey, TValue> 泛型集合 .............................................. 166
7.4 集合的實戰演練 .......................................................................................... 167
7.5 泛型集合實戰演練 ....................................................................................... 172
7.6 綜合項目實戰6——切割潑濺效果 .............................................................. 173
7.6.1 創建腳本文件 .................................................................................. 174
7.6.2 編輯腳本文件 .................................................................................. 174
7.6.3 掛載腳本文件 .................................................................................. 175
習題 ..................................................................................................................... 176
虛擬現實程序設計(C# 版)
VIII
第8 章 常用接口 ..................................................................... 178
8.1 IEnumerator 接口 ........................................................................................ 178
8.2 ICollection 接口 .......................................................................................... 178
8.3 IList 接口 ..................................................................................................... 179
8.4 接口實戰 ..................................................................................................... 179
8.5 綜合項目實戰7——關卡準備邏輯 .............................................................. 180
8.6 綜合項目實戰8——關卡結束 ..................................................................... 182
習題 ..................................................................................................................... 183
第3 篇 虛擬現實程序設計進階
第9 章 數據結構基礎 .............................................................. 187
9.1 隊列 ............................................................................................................ 187
9.1.1 隊列的概述 ...................................................................................... 187
9.1.2 隊列的使用 ...................................................................................... 187
9.1.3 隊列的實戰 ...................................................................................... 189
9.2 棧 ................................................................................................................ 190
9.2.1 棧的概述 ......................................................................................... 190
9.2.2 棧的使用 ......................................................................................... 190
9.3 鏈表 ............................................................................................................ 192
9.3.1 鏈表的概述 ...................................................................................... 192
9.3.2 鏈表的使用 ...................................................................................... 192
9.4 字典(哈希表) ............................................................................................ 193
9.4.1 字典的概述 ...................................................................................... 193
9.4.2 字典的使用 ...................................................................................... 193
習題 ..................................................................................................................... 195
第10 章 算法基礎 ................................................................... 197
10.1 排序算法 ................................................................................................... 197
10.1.1 冒泡排序算法 .............................................................................. 197
10.1.2 選擇排序算法 .............................................................................. 198
10.1.3 插入排序算法 .............................................................................. 199
IX
目 錄
10.2 查找算法 ................................................................................................... 199
10.2.1 線性查找算法 .............................................................................. 199
10.2.2 二分查找算法 .............................................................................. 200
10.2.3 字典序列查找算法 ....................................................................... 201
10.2.4 二分查找算法實戰演練 ................................................................ 201
習題 ..................................................................................................................... 202
第11 章 異常處理和調試 ......................................................... 203
11.1 預處理指令 ............................................................................................... 203
11.1.1 可為空上下文 .............................................................................. 203
11.1.2 定義字符 ..................................................................................... 204
11.1.3 條件編譯 ..................................................................................... 206
11.1.4 定義區域 ..................................................................................... 206
11.2 異常處理 ................................................................................................... 207
11.2.1 拋出異常 ..................................................................................... 207
11.2.2 捕獲異常 ..................................................................................... 207
11.2.3 finally 代碼塊 ............................................................................... 208
11.2.4 多個catch 代碼塊 ....................................................................... 209
11.2.5 自定義異常 .................................................................................. 210
11.3 文件的輸入/ 輸出 ..................................................................................... 211
11.3.1 文件讀取(Input) ........................................................................ 212
11.3.2 文件寫入(Output) ..................................................................... 214
習題 ..................................................................................................................... 215
參考文獻 .................................................................................... 217